Krino

You pay for what gets collected.
Nobody is paid to find what didn’t.

That isn’t a complaint about your billing company — it’s the shape of the arrangement. Krino follows every claim after it leaves your office: whether it was accepted, what the payer decided, what actually paid, what came back short, and which ones nobody returned to.

We’re talking to practice owners →


01  /  What you get

Is this what you get from your biller?

Every practice that outsources billing approves one of these each month. For most owners it’s the one document in the whole relationship they read line by line.

Synthetic example · not a real practice or billing company
INVOICE
NORTHFIELD MEDICAL BILLING, LLC
P.O. Box #2214
Fairview, OR 97024
Service To: RIVERBEND FAMILY MEDICINE
Attention To: PRACTICE ADMINISTRATOR
Invoice No. 47
Invoice Date: 07/28/2026
#DescriptionTotal
47Patient Statements Paid$4,210.55
June 2026 Billing Services$118,463.90
June 2026 Billing Credit($612.40)
Subtotal:$122,062.05
6% of Subtotal:$7,323.72
INVOICE TOTAL:$7,323.72

It tells you exactly what you paid. Nothing in it tells you what you didn’t collect — and nothing in the arrangement produces a document that would. The fee is calculated on money that arrived, so money that arrived is the only figure either side has a reason to chase, reconcile, or check twice.


02  /  And this

A very good number, sitting on top of an unexplained one.

Alongside the invoice, most practices receive a summary of the month.

Synthetic example
Monthly Summary — June 2026
Charges submitted$214,880
Insurance payments$118,464
Adjustments$38,190
Patient balance$11,720
Net collection rate93.8%

93.8% is a good number, and it’s meant to be read that way. The $38,190 above it is contractual write-offs, denials nobody worked, claims that ran out of time, and payments that came in short — added together and reported as one line.


03  /  Better

You should at least be getting this.

Synthetic example
Denials by reason — June 2026
CO-16   Missing or incomplete information22 claims$4,180
CO-97   Bundled into another service14 claims$2,740
CO-50   Not deemed medically necessary8 claims$3,920
CO-22   Coordination of benefits7 claims$2,020
PR-31   Patient not eligible on date of service6 claims$1,610
CO-197  Prior authorization absent4 claims$3,690
61 claims$18,160

Better. You now know what went wrong. You still don’t know which claims, whether anyone has touched them since, how much time is left, or which ones need you rather than your staff.


04  /  What Krino gives you

Ideally, this.

Every claim with money still on it, sorted by how much time is left. Filter by the kind of work it needs, or by who has to do it. Open any row to see the whole life of the claim — when it went out, when the payer answered, when the money posted, and how long it has been sitting since.

Synthetic sample data · not from any practice · sortable, filterable, and rows open
Work
State Who
Okafor, D.02/27/202699215Medicare $186.00 Denied Documentation didn’t support the level billed Appeal · clinical Physician Open · untouched 164d EXPIRED
Claim timeline
  • 02/27/2026 Visit
  • 03/02/2026 Claim submitted
  • 03/03/2026 Accepted by payer
  • 03/26/2026 Remittance — denied CO-50
  • 03/30/2026 Posted to ledger as adjustment
  • No action recorded for 164 days
  • 07/24/2026 Appeal window closed
Detail
  • Claim 2026-0311-8842
  • Patient DOB 07/21/1955
  • Billed $186.00
  • Allowed $0.00
  • Paid $0.00
  • Denial CO-50 · not deemed medically necessary
Ibrahim, R.03/20/2026J1100Medicare $41.30 Denied Billed without the qualifying service it attaches to Resubmit Biller Open · untouched 114d 8 days left
Claim timeline
  • 03/20/2026 Visit
  • 03/23/2026 Claim submitted
  • 03/24/2026 Accepted by payer
  • 04/17/2026 Remittance — denied CO-B15
  • 04/21/2026 Posted to ledger as adjustment
  • No action recorded for 114 days
Detail
  • Claim 2026-0323-9017
  • Patient DOB 06/30/1968
  • Billed $41.30
  • Allowed $0.00
  • Paid $0.00
  • Denial CO-B15 · qualifying service not covered
Patel, A.11/14/202520611Aetna $205.60 Reversed Paid in January, then reversed in June after a retro review Appeal · admin Biller Open · untouched 41d 9 days left
Claim timeline
  • 11/14/2025 Visit
  • 11/17/2025 Claim submitted
  • 12/29/2025 Remittance — paid $205.60
  • 01/05/2026 Payment posted
  • 06/26/2026 Second remittance — payment reversed
  • 06/30/2026 Reversal posted
  • No action recorded for 41 days
Detail
  • Claim 2025-1117-4409
  • Patient DOB 12/02/1966
  • Billed $240.00
  • Allowed $205.60
  • Paid then taken back $205.60
  • Reason given Retroactive eligibility review
Chen, R.04/18/202620610UnitedHealthcare $178.40 Denied Joint injection bundled into the office visit; modifier 25 absent Recode Coder Open · untouched 95d 12 days left
Claim timeline
  • 04/18/2026 Visit
  • 04/20/2026 Claim submitted
  • 04/21/2026 Accepted by payer
  • 05/07/2026 Remittance — office visit paid, injection denied CO-97
  • 05/11/2026 Posted to ledger as adjustment
  • No action recorded for 95 days
Detail
  • Claim 2026-0420-1156
  • Patient DOB 11/08/1978
  • Billed $310.00
  • Allowed $131.60
  • Paid $131.60
  • Denial CO-97 · included in another service
Whitfield, J.04/02/202699396Cigna $224.00 Denied Another plan is primary; this one needs to go there first Eligibility Front desk Open · untouched 111d 19 days left
Claim timeline
  • 04/02/2026 Visit
  • 04/06/2026 Claim submitted
  • 04/07/2026 Accepted by payer
  • 04/21/2026 Remittance — denied CO-22
  • 04/24/2026 Posted to ledger as adjustment
  • No action recorded for 111 days
Detail
  • Claim 2026-0406-2280
  • Patient DOB 08/11/1959
  • Billed $224.00
  • Allowed $0.00
  • Paid $0.00
  • Denial CO-22 · covered by another payer per COB
Sorensen, K.04/24/202699214UnitedHealthcare $156.00$30.00 Rejected Procedure code inconsistent with the modifier used Recode Coder Open · untouched 79d 26 days left
Claim timeline
  • 04/24/2026 Visit
  • 04/27/2026 Claim submitted
  • 04/28/2026 Rejected at the clearinghouse — never reached adjudication
  • No action recorded for 79 days
Detail
  • Claim 2026-0427-3318
  • Patient DOB 12/08/1974
  • Billed $186.00
  • Allowed
  • Paid $0.00
  • Rejection CO-4 · modifier missing or inconsistent
Brooks, S.03/09/202696372BCBS $13.70$8.40 Paid short Payer allowed $42.10 and posted $28.40 Underpaid Biller Open · untouched 125d 31 days left
Claim timeline
  • 03/09/2026 Visit
  • 03/11/2026 Claim submitted
  • 03/12/2026 Accepted by payer
  • 04/02/2026 Remittance — allowed $42.10, paid $28.40
  • 04/07/2026 Payment posted in full, no variance flagged
  • No action recorded for 125 days
Detail
  • Claim 2026-0311-7734
  • Patient DOB 09/05/1971
  • Billed $58.00
  • Allowed $42.10
  • Paid $28.40
  • Variance $13.70 unexplained
Alvarez, M.05/02/202699214Aetna $142.00$35.00 Rejected Referring provider NPI missing from the claim Resubmit Biller Open · untouched 71d 42 days left
Claim timeline
  • 05/02/2026 Visit
  • 05/05/2026 Claim submitted
  • 05/06/2026 Rejected — never reached adjudication
  • No action recorded for 71 days
Detail
  • Claim 2026-0505-5561
  • Patient DOB 03/14/1962
  • Billed $177.00
  • Allowed
  • Paid $0.00
  • Rejection CO-16 · missing referring provider NPI
Rivera, L.05/22/202699213Medicaid $96.00 Denied Patient showed inactive on the date of service Eligibility Front desk Open · untouched 51d 55 days left
Claim timeline
  • 05/22/2026 Visit
  • 05/26/2026 Claim submitted
  • 05/27/2026 Accepted by payer
  • 06/15/2026 Remittance — denied PR-31
  • 06/19/2026 Posted to ledger as adjustment
  • No action recorded for 51 days
Detail
  • Claim 2026-0526-6642
  • Patient DOB 06/19/1994
  • Billed $96.00
  • Allowed $0.00
  • Paid $0.00
  • Denial PR-31 · patient not eligible on the date of service
Duarte, C.05/15/202697110BCBS $65.00$20.00 Denied Payer says the records don’t support this many sessions Appeal · clinical Physician Open · untouched 58d 62 days left
Claim timeline
  • 05/15/2026 Visit
  • 05/18/2026 Claim submitted
  • 05/19/2026 Accepted by payer
  • 06/09/2026 Remittance — denied CO-151
  • 06/12/2026 Posted to ledger as adjustment
  • No action recorded for 58 days
Detail
  • Claim 2026-0518-7719
  • Patient DOB 02/17/1990
  • Billed $85.00
  • Allowed $0.00
  • Paid $0.00
  • Denial CO-151 · frequency not supported by the information submitted
Nguyen, T.05/11/202673721Cigna $412.00 Denied No prior authorization on file for the MRI Appeal · admin Biller Open · untouched 62d 68 days left
Claim timeline
  • 05/11/2026 Imaging performed
  • 05/13/2026 Claim submitted
  • 05/14/2026 Accepted by payer
  • 06/08/2026 Remittance — denied CO-197
  • 06/11/2026 Posted to ledger as adjustment
  • No action recorded for 62 days
Detail
  • Claim 2026-0513-7051
  • Patient DOB 01/30/1989
  • Billed $412.00
  • Allowed $0.00
  • Paid $0.00
  • Denial CO-197 · precertification absent
Haddad, N.05/29/202620605Aetna $88.20$25.00 Denied Injection called not medically necessary at this frequency Appeal · clinical Physician Open · untouched 44d 76 days left
Claim timeline
  • 05/29/2026 Visit
  • 06/01/2026 Claim submitted
  • 06/02/2026 Accepted by payer
  • 06/23/2026 Remittance — denied CO-50
  • 06/26/2026 Posted to ledger as adjustment
  • No action recorded for 44 days
Detail
  • Claim 2026-0601-8123
  • Patient DOB 04/25/1983
  • Billed $113.20
  • Allowed $0.00
  • Paid $0.00
  • Denial CO-50 · not deemed medically necessary
Lindqvist, P.04/09/202699213Aetna $118.00$25.00 Paid NPI corrected and resubmitted; paid in full Resubmit Biller Closed 06/18/2026 Closed
Claim timeline
  • 04/09/2026 Visit
  • 04/13/2026 Claim submitted
  • 04/14/2026 Rejected — CO-16
  • 05/28/2026 Corrected and resubmitted
  • 06/15/2026 Remittance — paid $118.00
  • 06/18/2026 Payment posted · resolved
Detail
  • Claim 2026-0413-4402
  • Patient DOB 10/03/1980
  • Billed $143.00
  • Allowed $118.00
  • Paid $118.00
  • Days to close 66
Osei, F.03/30/202620610Cigna $165.50 Paid Modifier 25 added on resubmission Recode Coder Closed 05/29/2026 Closed
Claim timeline
  • 03/30/2026 Visit
  • 04/02/2026 Claim submitted
  • 04/23/2026 Remittance — injection denied CO-97
  • 05/06/2026 Corrected claim with modifier 25
  • 05/26/2026 Remittance — paid $165.50
  • 05/29/2026 Payment posted · resolved
Detail
  • Claim 2026-0402-3390
  • Patient DOB 05/27/1972
  • Billed $290.00
  • Allowed $165.50
  • Paid $165.50
  • Days to close 36
Marsh, T.02/18/202699214Medicare $149.00 Paid Appeal filed with the office note; denial overturned Appeal · clinical Physician Closed 06/02/2026 Closed
Claim timeline
  • 02/18/2026 Visit
  • 02/20/2026 Claim submitted
  • 03/16/2026 Remittance — denied CO-50
  • 04/09/2026 Redetermination filed with office note
  • 05/28/2026 Denial overturned — paid $149.00
  • 06/02/2026 Payment posted · resolved
Detail
  • Claim 2026-0220-2214
  • Patient DOB 09/14/1965
  • Billed $149.00
  • Allowed $149.00
  • Paid $149.00
  • Days to close 78
Showing 15 of 61 claims
Still open $1,622.20
Past appeal $186.00
Recovered $432.50
Needs a physician 3

Click any row to open the claim. On a narrow screen the table shows fewer columns — the rest are inside the row.

Appeal windows vary by payer and plan.

Three things do most of the work. Who acts separates the claims your front desk can close today from the three that need you to write something. Resolved is the column nobody currently has — untouched 164d means a hundred and sixty-four days have passed since anyone recorded a single action on that claim, and in every report you get today it looks identical to one denied last week. And opening a row shows you exactly where the work should have happened and didn’t.

Resubmit
A field is wrong or missing. Correct it and send it again — there’s nothing to argue about and no one to persuade.
Recode
The service was payable but not as it was coded. A modifier, a bundling edit, a code that contradicts another line. Needs someone who codes, not someone who chases.
Eligibility
The claim went to the wrong plan, or to the right plan on the wrong date. Coordination of benefits, termed coverage, a secondary that should have been primary.
Appeal · admin
A real dispute, but a procedural one: authorization that existed and wasn’t attached, timely filing with proof, a recoupment that shouldn’t have happened. Paperwork, not medicine.
Appeal · clinical
The payer is disputing the medicine — necessity, frequency, level of service. Winning it takes a clinician who can say why the care was warranted. These are the ones that get abandoned, because they’re the only ones that cost your time rather than your staff’s.
Underpaid
It paid, just not correctly. The payer’s own allowed amount and what posted don’t agree, or the allowed amount doesn’t match your contract.

05  /  Why it happens

A $60 denial isn’t worth the same to everyone.

Most independent practices outsource billing for 4–9% of collections. The arrangement works — until a claim comes back denied.

Reworking a denial costs staff time. Whether that time is worth spending depends entirely on who is counting.

Recovered valueCost to reworkRational move
Billing company
at 6%
$3.60~$25 in staff timeLet it go
Your practice~$56Not your staff’s hourCollect it

Illustrative arithmetic, not a claim about any specific practice.

Nobody here is acting in bad faith. The incentive simply doesn’t point the same direction for both parties, and the gap between the two rows never shows up in a report — it’s folded into adjustments and stops being visible.


06  /  Where this goes

Follow the money to the end of the line.

A visit happens, a claim goes out, and eventually a number lands in your account. There are several places along that path where money quietly stops moving, and each one needs a different kind of visibility. We’re working backward from the end.

Now

Every claim, to its end state

Each claim you submit ends somewhere: paid in full, paid short, denied and fixed, denied and dropped, or paid and later taken back. Krino follows every one of them there — through acceptance, adjudication, remittance, and whatever did or didn’t happen next. One export from your practice management system, and nothing about how you bill has to change.

Next

Match every remittance to a deposit

This is the one we most want to build. A payer saying it paid you and money landing in your account are two different events, and the second is almost never checked. Standard payment posting keys the remittance into your ledger and stops there — so a payment that was announced, reduced, netted against a recoupment, or never sent at all still shows as collected. Connecting the bank closes the loop: every remittance matched to a deposit, and every deposit that doesn’t match flagged.

After that

Upstream, into the chart

With EMR access the same logic runs earlier in the cycle: visits that never became a claim at all, charges that never made it onto one, and coding support offered at the point of care rather than as an audit months later. It’s a heavier integration and a larger data footprint, so it follows once the first two are solid.


07  /  Questions

Questions we get.

You already have someone doing it — that’s what the 4–9% pays for. The problem isn’t that nobody is working your claims; it’s that nobody can see which twelve of the sixty-one are worth an hour today, or which three of those twelve need you rather than your staff. Krino doesn’t add a person. It makes the existing one’s next hour obvious.

No. Krino doesn’t replace anything in your billing workflow and doesn’t require your biller to do anything differently. It reads a report you can already export yourself.

No. The data comes out of your own practice management system, under your own login. There’s nothing to ask permission for.

Then the report will show that, and that’s worth knowing too. Most of what Krino surfaces isn’t negligence — reworking a $60 denial genuinely costs a billing company more than it earns them. The incentive is structural, not personal.

Not today. What Krino reads now is what the payer sent back about claims that were already submitted — nothing about the visit itself. EMR access opens up work further upstream, and it’s on the roadmap, but it isn’t needed to start and won’t happen without you asking for it.

No. Payers will only discuss claims with the provider or a formally designated agent, and Krino is deliberately neither. You keep the relationship. We just tell you where to point it.

Not quite. A/R aging tells you what’s outstanding. It doesn’t tell you which claims were denied for a fixable reason, which ones nobody has touched since, which ones are about to run out of appeal time, or which ones can’t be closed without a clinician.

Claim files carry patient identifiers, insurance IDs, and diagnosis codes, so this is PHI and gets handled accordingly, under a BAA. It’s a far smaller surface than clinical records.


08  /  Talk to us

We’re talking to practice owners.

Krino is being built for independent practices that outsource billing and have no way to independently check the result.

Right now we’re asking owners how denials actually get handled day to day — who looks at them, when, and what happens to the ones nobody gets to. If you run a practice, we’d like twenty minutes. There’s nothing to buy at the end of it.

I’m Joon Kim, a practicing cardiac electrophysiologist. I know the billing side from inside a practice rather than from a market report, which is exactly why I’d rather ask you what you’re seeing than assume I already know.

Please don’t include any patient information in this message.