What Medicare owes you,
computed correctly.
Any CPT or HCPCS code, priced for your locality and the date you billed it. Every number cites the CMS file, row, and formula behind it — enough to check a payment or back an appeal.
Popular: 99213 99213 Established Patient Office Visit, Level 3 Common for routine follow-up of one or two stable chronic conditions or a new but minor problem — think a blood-pressure check-in or a sprained ankle. View rate & details → 99214 99214 Established Patient Office Visit, Level 4 Common for managing multiple or worsening chronic conditions, starting a new prescription, or a problem that needs ongoing drug-therapy monitoring. View rate & details → 99203 99203 New Patient Office Visit, Level 3 Typical for a new patient with a single, uncomplicated problem or one stable condition being established with the practice. View rate & details → 93000 93000 Electrocardiogram (ECG), Complete Ordered to evaluate chest pain, palpitations, or as part of a routine cardiac work-up. View rate & details → 36415 36415 Routine Venipuncture (Blood Draw) Reported whenever blood is drawn by needle stick for laboratory testing, regardless of which tests are ordered on the sample. View rate & details →
Rates vary by area: look up your locality by ZIP code.
Nobody notices a claim that's $20 light
Underpayments rarely arrive as denials. The claim pays, the posting clears, and the amount is a little smaller than it should have been — too small, on its own, to be worth an argument.
A visit billed in the wrong place of service. A contract pegged to a frozen prior-year schedule but priced against this year's. A code that flipped to a status that never pays separately. Each one costs a few dollars on one line, and none of them trips a posting review.
Catching it needs one thing: the exact allowed amount for that code, in that locality, on that date of service. That's the number this site computes, for free.
One error, priced: 99213 in the wrong setting
National allowed amounts, Q3 2026.
- Billed non-facility (office)
- $95.19
- Billed facility
- $57.45
- Gap, per visit
- −$37.74
At 40 of these a month, that's $18,115 a year on one code. Forty visits a month is an assumption; the per-visit gap is not.
What not having the number costs
The first two are industry estimates, not our measurements — treat them as the order of magnitude, not the number. The third you can check: every rate here names all three files and the row it read from each.
Three questions you can answer today
No account, no card, no seat count, no trial clock. If one of these is all you came for, you're done — take the number and go.
“What does this code pay here?”
A page for every CPT and HCPCS code: the allowed amount in both settings, the RVU math that produced it, whether it pays at all, and how it moved across quarters.
- Non-facility and facility amounts
- Your locality by ZIP, not a national average
- Rate history with release-over-release change
- Every price cites its CMS file, row, and math
“Was this line paid right?”
Enter a code, a date of service, your locality, and what the payer actually paid. Get the expected amount and the variance: underpaid, overpaid, or match.
- Priced from the release matching your date of service
- Handles the 80/20 split and sequestration
- %-of-Medicare multiplier for commercial contracts
- Carrier-priced codes say so instead of showing a fake $0
“What changed this quarter?”
CMS reprices the schedule four times a year, and most people find out from the remittance. See each release diffed against the last, or get an email when your codes move.
- Biggest increases and decreases, release over release
- Watch specific codes, or a whole specialty
- Specialty hubs with a free CSV export
- Most-billed codes ranked from CMS utilization data
A wrong rate looks exactly like a right one
Anyone can join a CSV. The failures that cost you money are quiet: a blank RVU read as $0, a status code that was never payable, a rate pulled from the wrong quarter. Nothing about the output looks wrong until a payer disagrees. Here are the rules we hold ourselves to.
The real payment formula
(work + PE + MP) × the GPCIs × conversion factor, with the PE component matched to your setting.
Immutable, versioned releases
A new quarter is a new ingest, so a past quarter stays answerable after the next release lands.
Status-driven payability
A/R/T pay; B/I/N/P/M/X/E don't. The status indicator decides, never the dollar value.
Blank RVU is not zero
Carrier-priced codes come back with a reason instead of a fake $0 that slips into a claim.
Sequestration is your choice
The ~2% cut applies after the formula, only when you ask. Gross or net, one toggle.
Every answer cites its source
We name the release, the CMS file and row behind each value, and the math they fed. Appeals teams can show their work.
Columns matched by name
CMS reshuffles column order and headers between releases. We map by name against an alias table and fail loudly on a missing column rather than guess.
We watch for silent corrections
CMS sometimes republishes a quarter in place. We re-check and record the revision, so a page can tell you which version of a release you're reading.
Check us on it: every source file we ingest, with its checksum and row count, and the methodology behind each number.
The same check, across the whole remittance
One line at a time is fine for a spot check. It doesn't scale to a month of claims, which is where the money actually is. Upload an 835 or a CSV, get expected versus paid on every line, and export the variances with the release, file, and row behind each one — so the appeal is already written.
- The upload schema accepts pricing fields only, so PHI stays out by design
- Stored payer multipliers pegged to a contract vintage, so "105% of 2023 Medicare" prices against 2023
- Appeal-ready export citing the release, file, and row behind every expected amount
We'd rather build this with you than guess
We're looking for a handful of billing companies, small RCM firms, and practice managers to shape it. Tell us what your remits look like and where the current process hurts: you get it first, you get founding pricing when there is a price, and your answer moves the build order. The list is small enough that a real person reads every one.
Illustrative worklist. The single-line version of this math is live and free today.
Also on the list — tell us which one is your actual problem
Contract Check
Paste a payer offer. See where it lands against Medicare and against what the payer pays comparable groups, dollarized at your volumes.
Payer benchmarks
Median and percentile negotiated rates per code and county, pulled from Transparency in Coverage files and shown as % of Medicare.
State Medicaid rates
State fee schedules with a %-of-Medicare comparison and a note on how each state actually sets its rates.
Your code portfolio
Save the codes and localities you bill, then get a quarterly read on what the new release did to your revenue.
Need a particular state or payer covered first? Name it →
Don't build a CMS parser
Pass a code, a ZIP or locality, a setting, and optionally a past quarter. Get the computed amount, whether it pays, and citations naming the CMS file, row, and math behind every number. The endpoints run today; what isn't built is self-serve signup and billing, so keys go out by hand. Ask for one and we'll talk.
- Ask for a past quarter and get that quarter's answer, not today's
- Send a ZIP and we resolve the locality through the versioned crosswalk; ambiguous ZIPs error instead of guessing
- Every value cited to its CMS file, row, and column, with the formula shown
- payable=false comes with a machine-readable reason
- Bulk rate lookups and a claim check, not one code at a time
# request
curl https://localishealth.com/v1/rates/99213 \
-H "Authorization: Bearer sk_live_…" \
-d zip=90210 # or locality=… \
-d setting=non_facility \
-d year=2026 -d quarter=C
# response
{
"code": "99213",
"payable": true,
"status": "A",
"amount": "95.19",
"sequestration_applied": false,
"release": { "schedule": "pfs", "year": 2026, "quarter": "C" },
"citations": {
"sources": { "rvu": { "file": "PPRRVU2026_Jul_nonQPP.csv", "row": 12954, … }, "gpci": { … }, "zip_locality": { … } },
"calculation": {
"formula": "(work_rvu × work_gpci + pe_rvu × pe_gpci + mp_rvu × mp_gpci) × conversion_factor",
"inputs": { "work_rvu": 1.3, "work_gpci": 1, "pe_rvu": 1.46, "pe_gpci": 1, "mp_rvu": 0.09, "mp_gpci": 1, "conversion_factor": 33.4009 }
}
}
}
Free for one claim. Paid for all of them.
Look up a rate, check a payment, read the history — free, and staying free. CMS publishes the data; gating it would be a strange way to earn a living. We'll charge when one claim becomes a thousand, or when you want these numbers inside your own software. Neither is built yet.
Free, permanently
Live nowEverything you need to answer "what does this pay, and was I paid it" for a claim.
- Every code page, every quarter we hold
- Locality and ZIP rates
- The expected-payment calculator
- Rate-change email alerts
- Specialty hubs and CSV exports
- Glossary, guides, and methodology
What we'll charge for
Not built yetThe parts that find money at volume, or replace work your team is doing by hand.
- Batch remittance reconciliation
- API keys, quota, and support
- Stored payer multipliers and Contract Check
- Payer and Medicaid benchmarks
- Saved code portfolios with quarterly impact
No card, no trial clock, no "contact sales." Join the waitlist and you'll hear from us when there's something worth paying for.
Did this page answer your question?
We're building this out in the open. Tell us what you were actually trying to work out and we'll either answer you directly or build the page that does.
Start with one code
Pull the rate for something you billed last month, in your locality, from the release that was live at the time. If it doesn't match what you were paid, you've found the first one.