Under the Affordable Care Act, dozens of preventive services must be covered at zero cost to the patient—no copay, no deductible, no coinsurance. Yet millions of Americans receive surprise bills for preventive care every year. The problem isn’t usually the law—it’s how visits get coded. When a “wellness check” is billed as a “diagnostic visit,” your free screening suddenly costs $200–$500. Here’s what’s actually free, what triggers a bill, and how to fight back.

1. The ACA preventive care mandate

Section 2713 of the Affordable Care Act requires all non-grandfathered health insurance plans to cover recommended preventive services without cost-sharing. The services that qualify are determined by three bodies:

  • U.S. Preventive Services Task Force (USPSTF) — Services with an “A” or “B” recommendation grade
  • Advisory Committee on Immunization Practices (ACIP) — All recommended vaccines
  • Health Resources and Services Administration (HRSA) — Women’s and children’s preventive services

Key requirements: The service must be performed by an in-network provider, and it must be a screening (no symptoms), not a diagnostic workup. Plans must cover these services with zero copay, zero deductible, and zero coinsurance.

Important: Grandfathered plans (those that existed before March 23, 2010, and have not made significant changes) are exempt from the preventive care mandate. Check with your insurer if you are unsure whether your plan is grandfathered. If you’ve been billed for a service you believe should be free, upload your bill to BillKarma—we’ll identify whether the codes match preventive care requirements.

2. Complete list of no-cost preventive services

The following services must be covered at no cost on ACA-compliant plans when ordered for screening purposes by an in-network provider:

ServiceWho QualifiesCommon CPT CodeFrequency
Annual wellness visitAll adults99395–99397Annually
Blood pressure screeningAll adults99213 (part of wellness)Annually
Cholesterol screeningAdults 20+; higher risk starting at 1780061Every 4–6 years
Colorectal cancer screeningAdults 45–7545378 (colonoscopy)Every 10 years
Depression screeningAll adults96127Annually
Diabetes screening (Type 2)Adults 35–70 who are overweight82947Every 3 years
Hepatitis B screeningAdults at increased risk87340As recommended
Hepatitis C screeningAll adults 18–7986803Once
HIV screeningAdults 15–6587389At least once
Lung cancer screening (low-dose CT)Adults 50–80 with 20+ pack-year smoking history71271Annually
MammogramWomen 40+77067Every 1–2 years
Cervical cancer screening (Pap)Women 21–6588175Every 3 years
ContraceptionWomen of reproductive ageVariousAs prescribed
All ACIP-recommended vaccinesAll ages per scheduleVariousPer ACIP schedule
Obesity screening and counselingAll adults with BMI 30+99401–99404As recommended
STI screeningSexually active adults at increased risk87491, 87591Annually

This is not exhaustive—USPSTF maintains over 80 recommendations with A or B grades. The full list is available at the USPSTF website. Use our cost calculator to look up what Medicare pays for each of these screening codes in your area—this gives you a baseline to compare against if you are billed.

3. When preventive turns diagnostic (and bills you)

This is where most surprise bills come from. A visit that starts as preventive can be reclassified as diagnostic based on what happens during the appointment:

ScenarioBilled AsCost to You
Annual wellness exam, no complaints discussedPreventive (99395)$0
Annual wellness exam + “I’ve had headaches lately”Preventive (99395) + Diagnostic (99213)$0 + copay/deductible for 99213
Screening mammogram, no abnormalitiesPreventive (77067)$0
Screening mammogram, abnormality found, additional imagingPreventive (77067) + Diagnostic (77066)$0 + cost-sharing for 77066
Screening colonoscopy, no polypsPreventive (45378)$0
Screening colonoscopy, polyps removedShould still be preventive (45378/45385)$0 (if plan complies with ACA update)

Case study: $340 bill for a “free” annual physical

Situation: Jennifer scheduled her annual wellness exam, which should be covered at 100%. During the visit, she mentioned occasional lower back pain. Her doctor spent 5 minutes discussing it and suggested stretches.

The bill: The office billed both a preventive visit (99395, $0 to Jennifer) and a separate office visit (99213, $185 physician fee + $155 facility fee = $340) for addressing the back pain complaint. Jennifer’s deductible had not been met, so she owed the full $340.

What she did: Jennifer called the billing department and asked them to rebill the visit under the preventive code only, since the back pain discussion was brief and no separate workup was ordered. The office refused. She then filed an appeal with her insurance company, citing that the back pain was discussed incidentally and did not constitute a separate evaluation. The insurer agreed and reprocessed the claim as preventive only. Jennifer’s bill: $0. Savings: $340.

Scan your bill with BillKarma to quickly check whether your preventive visit was coded correctly or split into a diagnostic charge.

4. Common billing traps with preventive care

The “dual visit” split bill: As in Jennifer’s case, mentioning any symptom or health concern during a preventive visit can trigger a second, diagnostic visit code. Suddenly your $0 wellness visit has a $150–$400 diagnostic charge attached to it. Some providers do this routinely.

Lab work coded as diagnostic: Blood work ordered during your annual wellness exam should be coded as screening (preventive). But if the lab or provider codes it as diagnostic—for example, a lipid panel coded under a diagnostic ICD-10 code instead of a screening code—it hits your deductible. Always check the diagnosis code (ICD-10) on your lab results, not just the procedure code.

Out-of-network providers at in-network facilities: Your in-network doctor’s office may use an out-of-network lab. The preventive care mandate only requires zero cost-sharing with in-network providers. If an out-of-network lab processes your “free” screening blood work, you may receive a bill. Check your facility’s affiliated providers in our hospital and provider directory before your visit.

Colonoscopy polyp removal reclassification: Historically, insurers reclassified a screening colonoscopy as diagnostic if polyps were found and removed, triggering cost-sharing that could exceed $1,500. The ACA was updated to prohibit this, but some plans have been slow to update their claims processing. If you are billed for polyp removal during a screening colonoscopy, appeal immediately.

The ICD-10 code matters as much as the CPT code. A cholesterol test (CPT 80061) coded with an ICD-10 screening diagnosis (Z13.220) is free. The same test coded with a diagnostic diagnosis (E78.5, hyperlipidemia) is subject to cost-sharing. Ask your provider to use screening diagnosis codes for preventive services. Learn more about how procedure codes work in our CPT codes guide.

5. How to fight a wrongly-billed preventive visit

  1. Get the EOB and itemized bill. Check the CPT codes and ICD-10 diagnosis codes. Identify whether the service was coded as preventive or diagnostic. For a step-by-step walkthrough, see our guide to reading your EOB.
  2. Call the provider’s billing department. Ask them to review and resubmit the claim with the correct preventive CPT and ICD-10 codes. Many billing errors are resolved at this step.
  3. File a formal appeal with your insurer. If the provider won’t change the codes, appeal directly with your insurance company. Cite the specific ACA preventive care requirement and the USPSTF recommendation grade (A or B) for the service.
  4. Include supporting documentation. Attach the USPSTF recommendation, the relevant CPT code, and a letter explaining that the service was a routine screening without diagnostic intent.
  5. File a complaint if needed. If the insurer denies your appeal, file a complaint with your state insurance commissioner and the U.S. Department of Health and Human Services. ACA preventive care coverage is a federal requirement, and regulators take violations seriously. For a full walkthrough of the appeals process, see our guide to appealing insurance denials.

6. Protecting yourself before your visit

Schedule separately. If you have health concerns to discuss, book a separate appointment from your wellness visit. This prevents the dual-visit billing problem entirely.

Tell the front desk the visit is preventive. When scheduling, explicitly say “I’m scheduling my annual wellness exam” and confirm it will be billed as a preventive visit. Ask for the CPT code they plan to use.

Be cautious about discussing symptoms. During your wellness visit, if the doctor asks “any concerns?” and you mention a new symptom, that can trigger a diagnostic code. If you have something to discuss, say: “I’d like to schedule a follow-up to discuss that separately.”

Verify lab orders are coded as screening. Before blood work is drawn, ask the provider to confirm the orders use screening ICD-10 codes. This takes 30 seconds and can save you hundreds of dollars.

Confirm in-network status for all providers. Verify that the lab, imaging center, and any specialists involved in your preventive care are in-network. The zero cost-sharing guarantee only applies to in-network providers. Look up your hospital’s billing grade and affiliated labs in our hospital pricing directory.

One sentence can save you hundreds: Before your annual wellness exam, tell the scheduling staff: “This is a preventive wellness visit only. Please bill it under the preventive care code.” This sets the expectation and creates a record that the visit was intended as preventive. After your visit, upload your bill to BillKarma to confirm the codes are correct before you pay.

Frequently asked questions

Why did I get a bill for a preventive care visit that should be free?

Most likely, the visit was coded as diagnostic rather than preventive. This happens when a new symptom is discussed, a diagnostic test is ordered, or the provider uses a diagnostic ICD-10 code instead of a screening code. Request the EOB, check the CPT and ICD-10 codes, and ask the provider to resubmit with preventive codes if the service was truly a screening.

Is a colonoscopy free under the ACA?

A screening colonoscopy for adults 45–75 is free under the ACA. If polyps are removed during the screening, it should still be covered at no cost (the ACA was updated to address this). If your insurer charges you for polyp removal during a screening colonoscopy, file an appeal.

What preventive services are free for women?

Free women’s preventive services include well-woman visits, mammograms (annually from age 40), Pap smears, HPV testing, all FDA-approved contraceptives, breastfeeding support, gestational diabetes screening, and domestic violence screening. All must be provided at zero cost by in-network providers.

Are vaccines free under the ACA?

Yes. All ACIP-recommended vaccines (flu, COVID-19, shingles, Tdap, HPV, pneumonia, etc.) must be covered at no cost when administered by an in-network provider. If you are charged, the vaccine was likely given by an out-of-network provider or your plan is grandfathered.

How do I appeal a preventive care bill?

Start by asking the provider to resubmit with the correct preventive CPT and ICD-10 codes. If that fails, file a written appeal with your insurer citing the ACA Section 2713 preventive care mandate and the specific USPSTF recommendation. Include the CPT code, the USPSTF grade, and documentation that the service was a routine screening.

Sources