ICD code R73.03 – Prediabetes diagnosis and billing
Billable Code Specific Code
R73.03 is the billable ICD-10-CM code for prediabetes. It sits in category R73 (Elevated blood glucose level) and covers glucose above normal but below the diabetes threshold. That means an HbA1c of 5.7% to 6.4%, a fasting glucose of 100 to 125 mg/dL, or a 2-hour OGTT of 140 to 199 mg/dL.
The code applies only when the provider writes "prediabetes" or "borderline diabetes" in the assessment. A lab value alone is not enough, and different wording points to R73.01, R73.02 or R73.09 instead. The CDC estimates that 98 million American adults have prediabetes.
- Chapter
- R00-R99 Symptoms, signs and abnormal clinical and laboratory findings, not elsewhere classified
- Category
- R73 Elevated blood glucose level
- Group
- R73.0 Abnormal glucose
- Billable
- Yes
- Code also known as
- borderline diabetes, pre-diabetes
Let Pabau's smart automation suggest the right codes, reduce claim denials, and keep your practice compliant—effortlessly.
- AI-powered code suggestions
- Real-time compliance checks
- Faster claims, fewer denials
Automate repetitive tasks and focus on what matters most—your patients.
Reduce coding errors and ensure compliance with the latest regulations.
Clean claims, fewer denials, and faster reimbursements.
Powerful insights and reporting to help your practice thrive.
HIPAA compliant SOC 2 certified GDPR-compliant Trusted by 4,000+ clinics worldwide
Key takeaways
R73.03 is the billable ICD-10-CM code for prediabetes, and it needs “prediabetes” or “borderline diabetes” written in the provider’s assessment.
The ADA ranges are HbA1c 5.7% to 6.4%, fasting glucose 100 to 125 mg/dL, and 2-hour OGTT 140 to 199 mg/dL.
The provider’s wording, not the lab value, decides between R73.01, R73.02, R73.03 and R73.09.
Medicare’s diabetes prevention program sets its fasting glucose floor at 110 mg/dL, so not every R73.03 patient qualifies.
Once a patient carries a diabetes diagnosis from E08-E13, R73.03 comes off the claim.
ICD-10 code R73.03 means prediabetes, and only the provider can say so
ICD-10 code R73.03 is the billable ICD-10-CM code for prediabetes. “Prediabetes” is its official descriptor in the tabular list maintained by the CDC’s National Center for Health Statistics (NCHS).
It is a leaf-level code with no further subdivisions. It sits in category R73 (Elevated blood glucose level), inside Chapter 18, which covers symptoms, signs and abnormal findings (R00-R99).
One wording trap catches new coders. “Borderline diabetes” is a lay synonym for prediabetes, and the alphabetic index sends it straight to R73.03. If a physician writes “borderline diabetes,” you code R73.03, not R73.09.
Three lab tests qualify, but a lab value never codes R73.03 on its own
R73.03 applies when the provider documents prediabetes from a glucose result above normal but below the diabetes threshold. A glucose result below normal belongs elsewhere. Unexplained hypoglycemia in a patient without diabetes codes to ICD-10 code E16.2.
The American Diabetes Association (ADA) Standards of Care name three qualifying tests. The provider has to confirm the diagnosis in each case. A coder can’t infer it from the result.
CMS mirrors these ranges for Medicare Diabetes Prevention Program eligibility, with one exception covered in the MDPP section below.
The OGTT range is impaired glucose tolerance. It supports R73.03 only when the provider also writes “prediabetes.” If the note says “impaired glucose tolerance” without “prediabetes,” coding moves to R73.02.
The note decides between R73.01, R73.02, R73.03 and R73.09
The coding call you’ll make most often around prediabetes is which R73.0- code fits. The answer comes from the provider’s documentation, never from the lab value.
The table below sets the four codes side by side, with type 2 diabetes for contrast.
Here’s how it plays out. A patient with an FPG of 112 mg/dL can receive either R73.01 or R73.03, depending only on what the physician writes. Neither code is wrong for that value, and the coder follows the provider’s language.
The practical point: the lab value does not determine the code. The note does.

A diabetes diagnosis pushes R73.03 off the claim
Category R73 carries an Excludes1 note for diabetes mellitus (E08-E13). Excludes1 means the two can’t be coded together, because a patient can’t have prediabetes and diabetes at the same time.
- Excludes1 (E08-E13): Any confirmed diabetes code replaces R73.03. That covers diabetes due to an underlying condition (E08), drug or chemical-induced (E09), type 1 (E10), type 2 (E11) and other specified (E13).
- Pregnancy: Abnormal glucose in pregnancy codes to O99.81- rather than a stand-alone R73.0- code. The FAQ below covers how to pair them.
- Secondary use: R73.03 can sit as a secondary code on a visit for another condition when prediabetes affects care and the physician documents why.
If you see an active diabetes code such as E11.9 on the problem list, don’t assign R73.03 for that date of service. An old prediabetes note doesn’t change that, since the diabetes diagnosis supersedes it.
Three things the chart needs before you code prediabetes
The prediabetes ICD-10 code needs three elements in the record before you can defend it. When one is missing, the claim is exposed in an audit even if it pays the first time.
- Provider-confirmed terminology: The assessment or impression says “prediabetes,” “pre-diabetes” or “borderline diabetes.” A lab comment alone, such as “HbA1c 6.1%,” doesn’t qualify. Practices that review labs without updating the assessment end up with records nobody can code.
- The qualifying lab value: The chart shows the test (HbA1c, FPG or 2-hour OGTT), the value, the reference range and the collection date. That is what survives a medical necessity review. A note that only says the result is “on file” is weak documentation.
- A current date and an ordering provider: The lab should fall within a clinically reasonable window of the encounter. A six-month-old HbA1c used for a new prediabetes diagnosis, with no updated assessment, invites an audit finding.
EHR templates that prompt for a diagnosis label during lab review make it far easier to submit a clean claim on the first pass. Checking coverage for preventive metabolic services before the visit cuts denials further, as covered in our guide to insurance eligibility verification.
CPT codes that travel with R73.03
R73.03 supports medical necessity for a short list of procedure codes. The HbA1c test, 83036, is the one you’ll pair with it most. The table covers the usual companions. If the in-house test runs on a device cleared for home use, bill code 83037 instead.
One code that doesn’t belong on this list is diabetes self-management training (G0108/G0109). Medicare pays DSMT for diagnosed diabetes only, so it isn’t payable for a prediabetes patient.
How an R73.03 claim moves from visit to payment
Most R73.03 problems start upstream of the billing office. Walk the claim through in order and you’ll see where each one creeps in.
- The result comes back. An HbA1c of 6.0% lands in the provider’s inbox for review.
- The provider names it. The assessment says “prediabetes” and records the plan, such as lifestyle counseling or a repeat test in a year.
- The coder sequences it. The reason for the visit goes first. R73.03 follows, unless prediabetes was the whole point of the encounter.
- Charges go on. Bill the E&M visit, plus 83036 if the practice ran the test in-house. Medicare usually wants modifier QW on a CLIA-waived point-of-care HbA1c.
- The claim goes out. It’s submitted electronically on an 837P, and the clearinghouse edits catch format errors before the payer does.
- Payment posts. The remittance shows whether each line paid. A denied line goes back to the provider or the coder, depending on the reason code.
Medicare’s diabetes prevention program sets a higher bar
CMS has covered the Medicare Diabetes Prevention Program (MDPP) expanded model since April 2018. R73.03 is the usual supporting diagnosis. Medicare’s fasting glucose range, though, starts higher than the ADA’s.
Medicare MDPP eligibility criteria (all must be met):
- HbA1c 5.7% to 6.4%, OR fasting plasma glucose 110 to 125 mg/dL (not 100 mg/dL), OR 2-hour OGTT 140 to 199 mg/dL
- Qualifying lab result within 12 months before the first MDPP session
- BMI of 25 or above (23 or above for Asian Americans)
- Not previously diagnosed with diabetes (other than gestational)
- No end-stage renal disease
Watch the FPG floor. Medicare requires 110 mg/dL, not the ADA’s 100 mg/dL. A patient with an FPG of 105 mg/dL meets the ADA definition and qualifies for R73.03, but doesn’t meet MDPP eligibility. Check which threshold applies before an MDPP G-code goes out. If preventive benefits are new to your team, medical billing fundamentals explains how payer rules sit on top of diagnosis coding.
MDPP services are billed with G-codes in the G9873-G9890 range, with R73.03 as the supporting diagnosis. Each G-code maps to a session type or a performance milestone in the CDC-recognized program. In a CMS audit, the R73.03 documentation in the beneficiary’s record is what backs up those claims.
Four denials that hit R73.03 claims, and the fix for each
R73.03 problems cluster around four scenarios. Each one has a clear fix, so it pays to know them before the remittance arrives.
If you process a lot of preventive claims, denial management workflows that track R73.03 denials by payer will show which rule keeps biting.
The reference on medical billing denial codes explains the CARC and RARC reason codes these rejections usually carry.
Before you submit: A quick R73.03 checklist
- The assessment says “prediabetes,” “pre-diabetes” or “borderline diabetes,” not only “elevated A1c.”
- The qualifying value, its reference range and its collection date sit in the note.
- No E08-E13 code appears on the same claim.
- R73.03 is secondary unless prediabetes was the reason for the visit.
- An in-house HbA1c has its 83036 line, with QW where the payer asks for it.
- For MDPP, the FPG is 110 mg/dL or higher and the lab is under 12 months old.
Is R73.03 a primary or secondary diagnosis?
R73.03 can be either, but it works as a secondary code far more often.
When R73.03 may be principal: A visit where prediabetes is the whole reason for the encounter can list R73.03 first. An MDPP intake evaluation or a focused metabolic counseling visit are typical examples. The documentation must show that prediabetes management was the chief concern, not an incidental finding.
When R73.03 is secondary: That covers most encounters where prediabetes is documented. Take a patient seen for hypertension whose note also addresses metabolic risk. I10 goes first, with R73.03 as an additional code, provided the physician records why it matters to the visit.
Payer variation matters: Some commercial payers restrict R73.03 to secondary status and deny it as principal on a standard E&M claim. Check the payer’s policy, or the LCD for Medicare, before you sequence R73.03 first on a non-preventive visit.
Comorbidities that usually share the claim with R73.03
Prediabetes rarely shows up alone. Hyperlipidemia is often treated in the same metabolic risk visit and coded as ICD-10-CM code E78.5 when unspecified. If your practice specializes in metabolic care, expect these four codes alongside R73.03 on many claims. Each has its own co-coding rule.
Metabolic syndrome has coded to E88.810 since October 2023, when E88.81 became a non-billable header. You can assign it with R73.03 when the provider documents both, because no excludes note separates them. The rule is the same as everywhere else here: the provider documents the condition before you code it. If the provider also orders a fasting insulin level to assess insulin resistance, the lab reports it with insulin code 83525.
Pro Tip
Review a sample of R73.03 claims each quarter against each payer’s policy, and the LCD for Medicare. Some commercial payers accept R73.03 as principal only on annual wellness or dedicated preventive visits. Those rules often sit in payer policy rather than in a standard denial code, so they’re easy to miss in reports.
How Pabau keeps prediabetes claims moving
Most prediabetes claims pass through three hands: the provider who writes the assessment, the coder, and whoever posts payments. When those live in separate systems, a missing “prediabetes” or an unbilled 83036 surfaces weeks later as a denial.
Pabau, the practice management platform we build, keeps the note, the charges and the claim on one patient record. Its claims management software sends US claims through Claim.MD as CMS-1500/837P submissions. Eligibility checks run before the visit, and ERA remittances post back against the claim.
That gives you one place to see whether a patient’s plan covers the visit, what was billed and what came back. A denied R73.03 line goes to the right person while the visit is still fresh.

Get prediabetes claims paid the first time
Pabau runs eligibility checks before the visit, submits electronic claims through Claim.MD and posts ERA remittances to the patient record. See how it handles metabolic billing from intake to payment.

Conclusion
R73.03 is one of the easier codes to get right, once the habit is in place. Fix it at the source. Ask providers to write “prediabetes” in the assessment whenever a result lands in range, and the rest of the claim follows.
The trade-off is MDPP. A patient can carry a valid R73.03 and still miss Medicare’s 110 mg/dL floor, so check eligibility before you promise a program. Electronic claims, eligibility checks and ERA remittances in one system keep both sides of that work visible.
Book a demo to see how Pabau handles prediabetes billing across a multi-provider practice.
Continue your research
Sending claims through a clearinghouse? How the Claim.MD clearinghouse works walks through the electronic submission path from charge to remittance.
Coding the screening visit before the diagnosis? ICD-10 code Z13.1 covers the encounter for diabetes screening.
Billing the HbA1c that confirmed it? CPT code 83036 explains the glycated hemoglobin test and its billing rules.
Documenting BMI for MDPP eligibility? ICD-10 code E66.9 covers unspecified obesity and how it pairs with metabolic codes.
Want the full revenue cycle around preventive care? What is revenue cycle management shows how coding at the encounter flows through to payment posting.
Frequently asked questions
When did R73.03 become a valid ICD-10-CM code?
R73.03 took effect on October 1, 2016, with the FY2017 code set. Before that, prediabetes indexed to R73.09. Corrected claims for older dates of service still follow the code set in force on that date.
What code do you use for a diabetes screening visit?
Use Z13.1, Encounter for screening for diabetes mellitus, when the test is ordered without a known abnormal result. If the result lands in range and the provider documents prediabetes, R73.03 applies from then on.
How is prediabetes coded during pregnancy?
Use a code from O99.81-, Abnormal glucose complicating pregnancy, childbirth and the puerperium, then add R73.03 to identify the abnormal glucose. Gestational diabetes is a separate condition and codes to O24.4-.
Does R73.03 count for HCC risk adjustment?
No. R73.03 doesn’t map to a payment HCC in the CMS-HCC model, which captures diabetes through E08-E13 only. Code it anyway whenever it affects the visit, because it drives care management and MDPP eligibility.
Is borderline diabetes coded as R73.03?
Yes. The ICD-10-CM alphabetic index maps “borderline diabetes” directly to R73.03, not R73.09. This is confirmed in the official ICD-10-CM index entry.



