Urine drug test bill: presumptive and definitive codes, priced
Medicare's fourth-quarter 2026 lab fee schedule pays $12.60 to $62.14 for a presumptive drug test and $114.43 to $246.92 for a definitive one. Presumptive prices follow the testing method, definitive prices follow the drug-class count, and Medicare's manual limits each family to one code per date of service. These are payment rates, not what any patient is charged.
Prices only. Nothing here says whether anyone should be tested, what a result means or how a test is used. Medicare rates and the average charges from Medicare claims are not your bill. Confirm your price in writing before service, code by code, with the lab or the hospital billing office.
Eight codes, two price ladders
A urine drug test bill is usually one or two codes, and the code carries almost all of the price. The fourth-quarter 2026 release of the Clinical Laboratory Fee Schedule (file 26clabq4, 2,243 records, every row effective January 1, 2026, one national rate per code) lists eight codes for this testing. They form two families that are priced on different logic. The codes are defined by method, not by specimen: the definitive descriptors say "all sources" and the presumptive ones name no specimen. The manual's validity-testing paragraph, quoted further down, is the one written for urine.
| Code | CMS short descriptor | What the descriptor says sets the price | Medicare rate, CLFS Q4 2026 |
|---|---|---|---|
| 80305 | Drug test prsmv dir opt obs | Presumptive test read by direct optical observation only, any number of drug classes, per date of service | $12.60 |
| 80306 | Drug test prsmv instrmnt | Presumptive test read by instrument assisted direct optical observation, any number of drug classes, per date of service | $17.14 |
| 80307 | Drug test prsmv chem anlyzr | Presumptive test by instrument chemistry analyzers, chromatography or mass spectrometry, any number of drug classes, per date of service | $62.14 |
| G0480 | Drug test def 1-7 classes | Definitive test, 1-7 drug classes, per day | $114.43 |
| G0481 | Drug test def 8-14 classes | Definitive test, 8-14 drug classes, per day | $156.59 |
| G0482 | Drug test def 15-21 classes | Definitive test, 15-21 drug classes, per day | $198.74 |
| G0483 | Drug test def 22+ classes | Definitive test, 22 or more drug classes, per day | $246.92 |
| G0659 | Drug test def simple all cl | Definitive-type test performed without one of three method conditions, any number of drug classes, per day | $62.14 |
The three presumptive descriptors all read "any number of drug classes, any number of devices or procedures" and end "per date of service," so the number of classes tested does not move the price. What moves it is how the result is produced: read by eye ($12.60), read with instrument assistance ($17.14), or run on a chemistry analyzer or mass spectrometry platform ($62.14). The definitive family turns that around. The four G0480 to G0483 descriptors share the same method language, and the price moves with the number of drug classes.
The spread is wide. The most expensive code in the set, G0483, pays 19.6 times the cheapest, 80305. Inside the presumptive family the top rung, 80307, is 4.93 times the bottom one, a gap of $49.54. Inside the definitive family the top band is $132.49 above the bottom band. And the entry-level definitive code, G0480, pays $52.29 more than the top presumptive code.
Two details in the file are easy to miss on a statement. First, G0659 and 80307 share one Medicare rate, $62.14. A definitive-type code and a presumptive code can therefore look alike by price, and only the code letters show which family a lab billed. Second, 80305 appears twice in the file, once plain and once with the QW modifier, both at $12.60. None of the other seven codes has a second row, and the file shows no price difference for that modifier.
How the drug-class count moves the price
The four definitive descriptors end with a class band: "1-7 drug class(es), including metabolite(s) if performed" for G0480, then 8-14, 15-21, and "22 or more." The NCCI Policy Manual describes the same design in its laboratory chapter: the definitive codes "differ based on the number of drug classes including metabolites tested." The count sets the code, and the table shows what each band edge is worth.
| Code | Drug classes counted | Medicare rate | Step up from the band below | Rate divided by fewest classes in band | Rate divided by most classes in band |
|---|---|---|---|---|---|
| G0480 | 1 to 7 | $114.43 | None | $114.43 | $16.35 |
| G0481 | 8 to 14 | $156.59 | $42.16 | $19.57 | $11.19 |
| G0482 | 15 to 21 | $198.74 | $42.15 | $13.25 | $9.46 |
| G0483 | 22 or more | $246.92 | $48.18 | $11.22 | No upper limit |
The last two columns are arithmetic, not prices. They show how one band rate spreads over fewer or more classes, and they make a simple point: inside a band the rate is flat, so a claim with 1 class and a claim with 7 classes both carry G0480 at $114.43, while a claim with 8 classes jumps to G0481 at $156.59. Crossing the 7-to-8 edge adds $42.16, the 14-to-15 edge adds $42.15, and the 21-to-22 edge adds $48.18. The top band has no ceiling, so 22 classes and any larger count are priced the same at $246.92.
Because each edge is worth between $42.15 and $48.18, the class count is the one number on a definitive line that deserves a second look. A patient can ask the lab's billing office to name the drug classes it counted on the claim for the date in question. That is a billing request. It needs no medical detail, and the answer should reconcile with the band on the statement: a G0481 line means the lab counted 8 to 14.
Presumptive codes: the method sets the price
The three presumptive descriptors differ only in how the result is obtained. Code 80305 covers a test "capable of being read by direct optical observation only," with immunoassay devices such as dipsticks, cups, cards or cartridges given as examples. Code 80306 covers the same kinds of devices when the result is read by instrument assisted direct optical observation. Code 80307 covers testing "by instrument chemistry analyzers," and its descriptor lists immunoassay platforms, chromatography and "mass spectrometry either with or without chromatography." All three say they include sample validation when performed.
The price shows where the real jump sits. Moving from direct observation to an instrument-assisted read adds $4.54. Moving from there to a chemistry analyzer adds $45.00. The 80306-to-80307 step is 9.9 times the 80305-to-80306 step, and a statement that shows 80307 is pricing the testing as laboratory instrument work.
One reading of the word "presumptive" needs care. It is a defined term in the code set, not a description of how simple the instrument is. The 80307 descriptor itself names chromatography and mass spectrometry, which are also the methods named in the definitive descriptors. What separates the families on paper is the further set of conditions the definitive codes require, covered in the next section, and the way the definitive price is built from the drug-class count.
A presumptive code is also a once-per-date line. Each descriptor ends "per date of service," so the code covers all the devices or procedures used that date and all the drug classes tested that date. Two presumptive lines on one date, whether the same code twice or two different ones, are the first thing to look for on an itemized statement, and the rule section below quotes what Medicare's manual says about them.
Definitive codes and what they bundle
The descriptors for G0480 to G0483 are long because they set conditions on the method. Each one requires, as the descriptor is written, three things together: (1) drug identification methods able to identify individual drugs and distinguish between structural isomers, "including, but not limited to gc/ms (any type, single or tandem) and lc/ms (any type, single or tandem and excluding immunoassays (e.g., ia, eia, elisa, emit, fpia) and enzymatic methods (e.g., alcohol dehydrogenase))"; (2) stable isotope or other universally recognized internal standards in all samples; and (3) method or drug-specific calibration and matrix-matched quality control material. The test may be "qualitative or quantitative, all sources," it "includes specimen validity testing," and it is billed "per day."
G0659 is the code for the definitive-type test that does not meet all three conditions. Its descriptor covers identification methods of the same kind, "performed without method or drug-specific calibration, without matrix-matched quality control material, or without use of stable isotope or other universally recognized internal standard(s) for each drug, drug metabolite or drug class per specimen," and it applies to "any number of drug classes." Its Medicare rate is $62.14, the same as 80307, and the NCCI manual notes that it "was added" alongside the four class-band codes. In the 2024 claims data discussed below it is a rarely billed code: 509 services from 31 providers in non-facility settings, against 540,945 services for G0483.
Two features of the definitive descriptors affect how to read a statement. The first is that the descriptor language includes the validity check on the specimen, so a separate validity line is a question rather than an expected add-on. The second is that "per day" is the unit. The definitive family has no per-sample or per-drug unit, so a bill that lists several definitive lines for one date is not itemizing drugs. It is listing codes, and the manual's one-per-day rule applies to the codes themselves.
The one-per-day rule in the NCCI manual
The Medicare NCCI Policy Manual states the limit in two chapters, and the wording differs slightly between them. Both are the 2026 edition, revision date 1/1/2026. Chapter X covers pathology and laboratory services, and its Section E is titled Drug Testing. Item 1, on page X-6, reads in full:
"Presumptive drug testing may be reported with CPT codes 80305-80307. These codes differ based on the level of complexity of the testing methodology. Only one code from this code range may be reported per date of service.
Definitive drug testing may be reported with HCPCS codes G0480-G0483 and G0659. These codes differ based on the number of drug classes including metabolites tested. Only one code from this group of codes may be reported per date of service."
Chapter X's section on medically unlikely edits, items 19 and 20 on page X-20, adds the unit limit:
"19. Beginning January 1, 2017, presumptive drug testing may be reported with CPT codes 80305-80307. These codes are reported "per date of service" and shall not be reported with more than one unit of service per day.
Beginning January 1, 2016, definitive drug testing may be reported with HCPCS codes G0480-G0483. These codes are reported "per day" and shall not be reported with more than one unit of service per day.
20. Definitive drug testing HCPCS code G0659 was implemented January 1, 2017. This code is reported "per day" and shall not be reported with more than one unit of service per day."
Chapter XII, which covers supplemental services under HCPCS Level II codes, repeats the same limits in Section C, item 11 (pages XII-7 and XII-8) and again in Section D on medically unlikely edits, item 10 (page XII-11). Item 11 adds one sentence to the definitive group, "HCPCS code G0659 defining a different type of definitive drug testing was added," and ends "Only one definitive drug testing HCPCS code may be reported per date of service." Item 10 states that G0480-G0483 and, separately, G0659 are each reported 'per day' and "shall not be reported with more than one unit of service per day."
Taken together, the passages set three limits: one presumptive code per date of service, one definitive code per date of service with G0659 counted in the definitive group, and one unit of any of these codes per day. The manual says "per date of service" for the presumptive codes and "per day" for the definitive ones, and applies the same one-unit limit to both. None of the passages lists an exception, and none says whether the two families may share a date.
The unit limit also exists as a published number. In the Q4 2026 medically unlikely edit tables, effective October 1, 2026, all eight codes carry a unit value of 1 and an adjudication indicator of 2, labelled "Date of Service Edit: Policy" with the rationale "Code Descriptor / CPT Instruction." That holds in both the practitioner table and the outpatient hospital table. Chapter I of the manual, page I-28, explains that an indicator of 2 marks "absolute date of service edits," which it calls "per day edits based on policy." It also describes how a date-of-service edit works: all units of the same code on the same date are summed, and if the sum exceeds the unit value, all units of that code for that date are denied. Denials may be appealed to the local claims processing contractor.
The scope of all this is Medicare. The chapter XII introduction says the policy statements address the HCPCS Level II codes "reported to Medicare Administrative Contractors (MACs) for Part B services." A commercial plan or a state Medicaid program writes its own coding edits, and a statement from a lab that bills a commercial plan is governed by that plan's contract.
Presumptive plus definitive on one date
The passages above limit each family separately. They never say whether a presumptive code and a definitive code may share a date, and the sources that do address the pairing disagree.
The manual is silent on the pair. The text in chapters X and XII gives each family its own one-per-date limit, in separate paragraphs, and leaves the combination unmentioned. That is not a statement that Medicare pays both, and it is not a statement that it refuses either. It leaves the question to other documents.
CMS announced it withdrew the pair-specific edit. The CMS NCCI page carried this announcement on November 3, 2026: "CMS is withdrawing NCCI PTP edits between Column One codes 80305, 80306, and 80307 for presumptive test(s), and Column Two codes G0480 – G0483, and G0659 for definitive test(s). CMS will delete the edits with a replacement file for the 4th quarter of 2023. Any claim that was affected by the procedure-to-procedure edits, including those that did not apply an NCCI modifier, will be processed and paid as appropriate under existing payment and coverage policies. CMS posted a replacement file on the NCCI PTP webpage." The October 2026 quarterly change files for practitioner and hospital edits, which list additions, deletions and modifier-indicator changes, contain no pair between those presumptive and definitive codes.
The 2023 history explains the confusion. A lab trade association's letter to CMS dated August 15, 2023 says an edit "that prohibits reporting and payment for presumptive urine drug testing on the same date of service as definitive urine drug testing" was implemented on July 1, 2023 "without warning and without the public comment period that typically occurs prior to NCCI edit implementation." The letter adds that CMS had by then changed the edit so that a modifier could bypass it, with the circumstances "generally defined by the Medicare Administrative Contractors (MACs) using local coverage determinations," and that payment with the modifier would not be available until October 1, 2023 unless an individual contractor allowed it earlier. A billing-forum thread begun on August 3, 2023 describes a lab claim in which the presumptive line was paid and the definitive line denied, with a Medicare denial message that cites the National Correct Coding Initiative, and a later post in the thread reproduces what it presents as CMS's announcement of the same edit and modifier change. These are accounts from the lab and billing side. The CMS announcement quoted above is the later step, a withdrawal of the edit altogether.
A 2026 vendor guide says the opposite. A billing-software company's published guide to code 80307, last updated September 16, 2026, states that "CPT code 80307 and G0480 cannot both be reimbursed on the same date of service for a Medicare beneficiary" and advises "Do not add G0480 on the same date of service." The same guide cites commercial payers' policies for bundling of confirmation testing into the presumptive codes. The Medicare statement is the part that conflicts with the CMS announcement, which says claims affected by the edit are paid under existing payment and coverage policies.
What can be said without picking a winner is short. The per-family limits are in force. CMS's own announcement says the pair-specific edit was withdrawn. Whether a Medicare contractor pays both codes on one date depends on its local coverage documents. And a commercial plan applies its own policy. For a reader holding a statement, that means a presumptive and a definitive line on the same date is neither proof of an error nor proof that both lines were payable. The explanation of benefits, or for Medicare the remittance notice, shows what happened to each line, and the guide to reading an explanation of benefits shows where.
Seven invented statements, checked against the rule
The seven patterns below are made up to exercise the rule. None describes a real patient or lab, and the dollar column adds Medicare rates for the listed lines to show scale. It is not a payment, a charge or a price anyone was quoted. The third column says only what the manual text above says about the pattern.
| Pattern | Lines and units | What the manual text says | Sum of Medicare rates for the lines |
|---|---|---|---|
| A. One date | 80307 x 1, G0480 x 1 | One code from each family and one unit of each, so neither per-family limit is exceeded. Whether the pair is payable is the question the previous section covers. | $176.57 |
| B. One date | 80305 x 1, 80307 x 1 | Two codes from the presumptive range. Chapters X and XII both say only one code from 80305-80307 may be reported per date of service. | $74.74 |
| C. One date | G0480 x 2 | Two units of one definitive code. The manual says G0480-G0483 "shall not be reported with more than one unit of service per day," and the Q4 2026 unit limit for G0480 is 1. | $228.86 |
| D. One date | G0480 x 1, G0481 x 1 | Two definitive codes. Chapter X allows one code from the definitive group per date of service. | $271.02 |
| E. One date | G0480 x 1, G0659 x 1 | Chapter X puts G0659 in the same group as G0480-G0483, so this is again two codes from one group. | $176.57 |
| F. Two dates: 80307 on the first, G0480 on the next | 80307 x 1, G0480 x 1 | Each date carries one code. The limits are per date of service, so neither passage reaches across the two dates. | $176.57 |
| G. Three dates, with 80307 and G0480 on each | 80307 x 1 and G0480 x 1 per date | Each date carries one code from each family, so the per-family limits are met on every date. The total is three times the same-date pair. | $529.71 |
Patterns A and F list the same two codes and carry the same $176.57 sum, yet one falls on a single date and the other on two. A statement total cannot show which, so the date column is the part of an itemized statement that decides whether a limit applied. Pattern B is the other easy miss: two presumptive lines add up to only $74.74, small next to anything in the definitive family, so a duplicate presumptive line is easy to overlook even though the manual says only one code from the range may be reported per date.
A statement that matches pattern B, C, D or E is a question for the lab's billing office, not a verdict. A duplicate can be a data entry slip, a correction that was entered twice, or a line the lab later withdrew. The itemized statement is the lab's list of what it sent to a payer, and a line can appear there and still be denied or adjusted before anything is owed. The explanation of benefits shows which. The guide to checking an itemized bill for errors covers how to raise a line with a billing office by date and code.
What 2024 Medicare claims show
The fee schedule says what Medicare pays. A second CMS file says what providers put on the claim. The Medicare Physician and Other Practitioners dataset by geography and service, data year 2024, reports for each billing code the number of providers, the number of services, the average charge providers submitted, and the average Medicare allowed amount. The table uses the national rows for place of service "O," the non-facility setting that is generally an office. The facility-setting rows for these codes are small and are left out.
| Code | Providers | Services | Average submitted charge | Average Medicare allowed amount | Charge as a multiple of allowed | CLFS rate, Q4 2026 |
|---|---|---|---|---|---|---|
| 80305 | 20,287 | 457,287 | $61.04 | $12.16 | 5.02 | $12.60 |
| 80306 | 818 | 8,130 | $95.50 | $16.54 | 5.78 | $17.14 |
| 80307 | 7,342 | 1,905,287 | $211.28 | $60.30 | 3.50 | $62.14 |
| G0480 | 3,052 | 623,894 | $287.92 | $110.22 | 2.61 | $114.43 |
| G0481 | 3,147 | 463,147 | $416.89 | $152.42 | 2.74 | $156.59 |
| G0482 | 2,558 | 496,261 | $509.81 | $193.41 | 2.64 | $198.74 |
| G0483 | 1,720 | 540,945 | $636.79 | $240.68 | 2.65 | $246.92 |
| G0659 | 31 | 509 | $134.70 | $51.82 | 2.60 | $62.14 |
The submitted charge is the amount providers put on the claim line, the same kind of figure as the charge column on an itemized statement. The multiple column splits cleanly by family. Every presumptive code has a higher charge-to-allowed multiple than every definitive code: the lowest presumptive multiple, 3.50 for 80307, is above the highest definitive multiple, 2.74. The widest multiple is on 80306, 5.78 times its allowed amount. In dollars the order reverses for the four class-band codes, whose gaps between average submitted charge and average allowed amount run from $177.70 for G0480 to $396.12 for G0483, against $150.98 for 80307.
On volume, non-facility claims in 2024 show 2,370,704 presumptive services and 2,124,756 definitive services. Code 80307 alone accounts for 1,905,287 of the presumptive total, against 457,287 for 80305 and 8,130 for 80306. Among the four class-band codes, G0480 has the most services at 623,894, G0483 comes second at 540,945, then G0482 at 496,261 and G0481 at 463,147. The file counts services and does not say why the bands fall as they do.
Two cautions apply. The first is the population. The dataset covers Medicare fee-for-service Part B non-institutional claims billed under a provider's national provider identifier. CMS's methodology document says it excludes patients in any form of Medicare Advantage plan and anyone without Part B fee-for-service coverage, and that aggregated records derived from 10 or fewer beneficiaries are left out. It says nothing about private insurance or people paying cash. The second is what "allowed" means. CMS defines it as including the amount Medicare pays, the deductible and coinsurance the beneficiary is responsible for, and any amount a third party is responsible for. For these eight codes the average Medicare payment equals the average allowed amount to the cent, so no coinsurance appears in the averages, which fits Medicare.gov's statement that you usually pay nothing for Medicare-covered diagnostic laboratory tests.
The average allowed amounts also sit slightly under the matching 2026 rates, by $0.44 to $10.32 depending on the code. The fee schedule rates were the same in 2024 as in 2026 (see the section on rate stability), so the gap is not a rate change, and the file does not explain it. The table is best used as a size comparison: the charge column is a list price set by the biller, the allowed column is close to the Medicare rate, and neither is a number any person was asked to pay.
Hospital outpatient lines and status Q4
When the same tests are billed on a hospital outpatient claim, a second layer of rules decides whether Medicare pays for the line separately. The October 2026 OPPS Addendum B lists all eight codes with payment status indicator Q4. The CY2026 Addendum D1 defines Q4 as "Conditionally Packaged Laboratory Tests," paid "under OPPS or CLFS," with two rules: payment is packaged if the test is billed on the same claim as a code carrying status J1, J2, S, T, V, Q1, Q2 or Q3, and in other circumstances the test takes status A and is paid under the CLFS. The Medicare Claims Processing Manual, chapter 4, section 10.4, says the same thing: when a Q4 service is not billed on the same claim as another separately payable service, the status changes to A and separate payment is made at the CLFS rate.
For a statement, that has a concrete meaning on a Medicare claim. A drug test line that rode along on an emergency or clinic visit can show a hospital charge and no separate Medicare payment, because the payment is packaged into the visit. The same line billed alone is paid at the rates in the first table. Neither case is an error. For a patient who is not on Medicare, the status indicator is not the rule: a hospital and a commercial plan agree their own payment terms, and a line that is packaged for Medicare can be paid separately, or not at all, under a contract. The guide to facility fees shows the visit-level charge that can sit beside a lab line, and the guide to lab test prices covers the common blood and urine codes in the same Medicare file.
The unit limits are the same in the hospital edit table: all eight codes carry a unit value of 1 with the same date-of-service indicator in the Q4 2026 outpatient hospital table. A hospital price file, if the hospital posts one, lists the hospital's own amounts for these codes; the guide to using hospital price transparency files explains how to look one up, and the amounts in it are the hospital's list or negotiated figures, not what a patient pays.
Codes the Medicare ladder does not price
A statement from a lab that bills commercial plans can carry codes that do not appear in the Medicare ladder. The CPT code set includes a run of codes from 80320 to 80377 for drug testing by drug or drug class; the OPPS addendum's short descriptors include "Drug screen quantalcohols" for 80320 and "Drug screen amphetamines 1/2" for 80324. Neither Medicare file used here prices them. The Q4 2026 fee schedule file contains no row for any of them, and its only rows in the 803 range are 80305, 80306 and 80307. In the October 2026 OPPS Addendum B, all 58 codes from 80320 to 80377, an unbroken run, carry status indicator B. Addendum D1 defines B as codes "not recognized by OPPS when submitted on an outpatient hospital Part B bill type (12x and 13x)," lists them as "Not paid under OPPS," and adds: "An alternate code that is recognized by OPPS when submitted on an outpatient hospital Part B bill type (12x and 13x) may be available."
The practical reading is that a statement showing codes in the 80320 to 80377 range cannot be matched to the Medicare anchors on this page. The Medicare definitive-test codes named in the NCCI manual are G0480 to G0483 and G0659. A patient holding a statement with codes that begin 803 can ask the lab which code it billed to the plan, how many units, and what amount the plan allowed. The Medicare ladder remains a useful yardstick for the order of magnitude, but it is not a price for those codes and should not be presented as one.
Validity testing, draws and other lines
Drug test statements often carry lines around the test code. The Medicare manual speaks to one of them directly. Chapter X, Section E, item 2, on page X-7, reads in full:
"2. Providers performing validity testing on urine specimens used for drug testing shall not separately bill the validity testing. For example, if a laboratory performs a urinary pH, specific gravity, creatinine, nitrates, oxidants, or other tests to confirm that a urine specimen is not adulterated, this testing is not separately billed."
The code descriptors point the same way. The presumptive codes include "sample validation when performed," and the definitive codes include "specimen validity testing." On a Medicare claim, a separate line for a validity check is therefore a question about the line, not an expected add-on. Other payers can write different rules, and the item is a Medicare manual statement, not a universal one.
A collection line is the other recurring item. Code 36415 is described by CMS as "Collection of venous blood by venipuncture," and its Q4 2026 fee schedule rate is $9.34. A urine specimen has no venipuncture, so a draw line beside a urine-only test is worth tying to an order: if a blood test was ordered the same day, the draw belongs to that order, and the statement should show the blood test next to it. Visit-level lines such as an office or clinic visit are billed under their own codes, and the guide to the pathology bill after a biopsy shows how lab charges and other layers split on another kind of specimen.
The last item is the units column. Every code in the ladder has a unit value of 1 in the Medicare edit tables. A statement that shows 2 or 3 in the units column for any of the eight codes on a single date is the situation in pattern C above, and the right move is the same: ask the lab to confirm the units and the date for that line.
From Medicare rate to your plan's bill
Medicare.gov states that Part B covers medically necessary diagnostic laboratory tests when a health care provider orders them, and that "You usually pay nothing for Medicare-covered diagnostic laboratory tests." The coverage question, whether a particular test on a particular date is covered, belongs to the local coverage documents that Medicare contractors publish, and the guide to the advance beneficiary notice explains that form.
For a patient with a commercial plan, the path is different. The lab sends a claim with its charge, the plan applies its contract, and the explanation of benefits reports an allowed amount and a patient share. For most tests the Medicare rate is a weighted median of private payor rates, so plan allowed amounts for a code sit on both sides of it. The guide to reading an explanation of benefits shows where each number sits.
For a patient paying without insurance, the number that counts is the lab's own price for each code. This page publishes no self-pay range for drug testing, because none could be verified from a public source. A lab that posts prices or sends them on request should list them by code, for the date of service, with the units, and the steps in the guide to asking for the cash price apply as written. Compare a quote to the ladder code by code: 80307 against 80307, G0481 against G0481. A quote for a bundle with no codes cannot be compared to anything.
How long these rates have held
The figures in the first table are not new. The first-quarter 2024 file (24clabq1, 1,991 records) and the fourth-quarter 2024 file (24clabq4, 2,068 records) carry the same rates for all eight codes as the fourth-quarter 2026 file: identical to the cent. One neighboring code did move: the venipuncture code 36415 was $8.83 in both 2024 files and is $9.34 in 2026.
The rates are set by a process with a calendar. The CMS fact sheet on the Clinical Laboratory Fee Schedule (MLN006818, March 2026) says that for most tests the payment amount equals the weighted median of private payor rates, that each rate stays in effect for three calendar years for these tests, and that CMS does not make geographical adjustments. It also says there is no phase-in payment reduction in 2026 and that for 2027 through 2029 CMS will not reduce a payment by more than 15 percent per year compared with the preceding year's amount. The data reporting period that feeds the next rate update ran from May 1 through July 31, 2026 and has closed. CMS's landing page for the fee schedule shows 2027 as the first year of the 15 percent cap, which is a ceiling and not a forecast, and neither that page nor the files page lists any 2027 amounts. The files page lists 26clabq1 through 26clabq4 as the newest quarterly files, with the fourth-quarter file used for every figure in this guide, so the rates printed here are the 2026 rates and may change when CMS posts new ones.
Five requests for the lab's billing office
None of these needs medical detail. Each is a billing request tied to a date and a code, and a written answer to each makes the statement checkable against the tables above.
- The codes, units and date for every drug test line. Ask for each line's code, units and date of service. Under the Medicare manual each family shows at most one code and one unit per date.
- The drug-class count behind a definitive code. For a G0480 to G0483 line, ask the lab to name the classes it counted. The band on the statement (1 to 7, 8 to 14, 15 to 21, or 22 or more) should match the count.
- The method behind a presumptive code. Ask which of 80305, 80306 or 80307 was billed and why that code fits. The jump from 80306 to 80307 is $45.00 at the Medicare rate.
- Whether a validity or collection line belongs. If a separate line appears for checking the sample or for a draw, ask what order it belongs to and which code it was billed under.
- The payer's decision on each line. Ask for the explanation of benefits or remittance that shows what the payer did with each line, then compare the allowed amount to the lab's price for the same code. The guide to questions to ask billing before a procedure lists the standing requests that apply to any test.
If the answers do not fit the tables here, the next step is a written dispute to the billing office with the date, code and line amount, kept short. The guide to checking an itemized bill sets out that process.
Drug test billing questions
Can a presumptive and a definitive test appear on the same date?
Nothing in the 2026 NCCI Policy Manual text on drug testing bars the pair. It limits each family to one code per date of service: one from 80305-80307 and one from G0480-G0483 and G0659. CMS's NCCI page says it withdrew the edits between the two families, with a replacement file for the fourth quarter of 2023. A billing-software company's guide updated September 16, 2026 says Medicare does not pay 80307 and G0480 on the same date, which conflicts with that notice. Payment also turns on local coverage documents and, for commercial plans, the plan's own policy, so the explanation of benefits is the document that shows what happened to each line.
Why does the definitive code change when more drug classes are counted?
Because the four codes are defined by class count. G0480 covers 1 to 7 drug classes at $114.43, G0481 covers 8 to 14 at $156.59, G0482 covers 15 to 21 at $198.74, and G0483 covers 22 or more at $246.92. Each step up costs $42.16, $42.15 and $48.18 at the Medicare rate. Inside a band the rate does not change.
Why is the charge on a drug test statement so far above the Medicare rate?
A statement's charge column is the biller's list charge, which is a different number from a Medicare payment rate. In CMS's 2024 claims data for non-facility settings, the average submitted charge was $211.28 for 80307 against an average allowed amount of $60.30, and $287.92 for G0480 against $110.22. Those are averages across Medicare claims, not what any patient was asked to pay, and the explanation of benefits shows the amount a plan actually allowed.
What does G0659 on a statement mean?
It is a definitive drug test code for testing that uses identification methods of the definitive type but is performed without method or drug-specific calibration, without matrix-matched quality control material, or without a stable isotope or other recognized internal standard for each drug, metabolite or class. It covers any number of drug classes and carries the same Medicare rate as 80307, $62.14. In the 2024 claims data it is rare: 509 services in non-facility settings, against 540,945 for G0483.
Can a lab bill separately for checking that a urine sample is genuine?
Under the Medicare manual, validity testing is not billed on its own line. Chapter X says providers performing validity testing on urine specimens used for drug testing shall not separately bill it, and names urinary pH, specific gravity, creatinine, nitrates and oxidants as examples. The presumptive and definitive code descriptors also say they include sample validation or specimen validity testing. A separate line for such a test on a Medicare claim is worth asking about; other payers set their own rules.
Does the Medicare lab rate change by state?
The rates are the same in every state. The CMS fact sheet on the Clinical Laboratory Fee Schedule says CMS does not make geographical adjustments to the payment rates. A hospital or commercial plan can still price the same code very differently, because the Medicare rate is only an anchor.
Sources and check dates
- CMS, Clinical Laboratory Fee Schedule, CY2026 Q4 file (26clabq4, PUF_CLFS_CY2026_Q4V1.csv, 2,243 records): rates and descriptors for 80305, 80306, 80307, G0480 to G0483, G0659 and 36415. CY2024 Q1 (24clabq1) and Q4 (24clabq4) files, same URL pattern, for the rate comparison. Checked November 3, 2026.
- CMS, Medicare NCCI Policy Manual 2026, chapter X (revision date 1/1/2026): Section E items 1 and 2 (pages X-6 and X-7) and Section M items 19 and 20 (page X-20). Checked November 3, 2026.
- CMS, Medicare NCCI Policy Manual 2026, chapter XII (revision date 1/1/2026): Section A introduction, Section C item 11 (pages XII-7 and XII-8) and Section D item 10 (page XII-11). Checked November 3, 2026.
- CMS, Medicare NCCI Policy Manual 2026, chapter I, Section V, page I-28: date of service edits and adjudication indicator 2. Checked November 3, 2026.
- CMS, Medicare NCCI Medically Unlikely Edits, Q4 2026 practitioner and outpatient hospital tables effective October 1, 2026. Checked November 3, 2026.
- CMS, National Correct Coding Initiative edits, announcements (withdrawal of the 80305-80307 and G0480-G0483, G0659 procedure-to-procedure edits), and the PTP edits page with the Q4 2026 quarterly additions, deletions and revisions files for practitioner and hospital edits. Checked November 3, 2026.
- National Independent Laboratory Association, letter to CMS on the NCCI edit for presumptive and definitive drug tests, August 15, 2023. Checked November 3, 2026. A coding forum thread of August 2023 (AAPC discussion board) is the secondary account of the same announcement.
- Pabau, CPT code 80307: presumptive drug test billing guide 2026, page dated as last updated September 16, 2026, a billing-software company's guide cited as the source of the conflicting statement on same-date billing. Checked November 3, 2026.
- CMS, OPPS October 2026 Addendum B (file dated October 14, 2026): status indicators for the eight codes and for 80320 to 80377; CY2026 final rule Addendum D1 (file dated November 20, 2025): definitions of status indicators B and Q4. Checked November 3, 2026.
- CMS, Medicare Claims Processing Manual, chapter 4 (Rev. 13799, issued 05-28-26), section 10.4, item 5: status indicator Q4. Checked November 3, 2026.
- CMS, Medicare Physician and Other Practitioners by Geography and Service, data year 2024 (dataset modified May 21, 2026), national rows, place of service O; data dictionary (2021 edition, definitions of the submitted charge, allowed amount and place of service fields) and the methodology overview (May 2024). Both documents were published for earlier data years; the fields used here carry the same names in the 2024 file. Checked November 3, 2026.
- CMS, MLN006818, Clinical Laboratory Fee Schedule (March 2026): payment basis, no geographic adjustment, 2026 and 2027 to 2029 reduction limits. Medicare.gov, Diagnostic laboratory tests: Part B coverage and cost. Checked November 3, 2026.
- CMS, Clinical Laboratory Fee Schedule landing page (data reporting period ended July 31, 2026; table of reduction caps by year) and files page: newest quarterly file listed is 26clabq4. Checked November 3, 2026.
Scope: the full quarterly NCCI edit tables (behind an AMA license acceptance page), Medicare contractors' local coverage documents, the commercial policies cited in the vendor guide and the coding references that define drug classes are separate documents and are not quoted on this page. General billing information, not medical, legal or insurance advice. Medicare rates are payment amounts, and the averages from Medicare claims are not prices charged to patients. The Medicare code descriptors are quoted in part from the CMS fee schedule file, and the code set is copyrighted by the American Medical Association. Confirm your price in writing.
With the lab statement in hand
Write down each line's code, units and date before calling, and ask for the plan's decision on each line in writing.