How to read an EHR migration reconciliation report
An EHR migration reconciliation report compares, for each record type, how many records left the old system with how many arrived in the new one, and gives a reason for every difference. To read it, check that every record type you agreed to move has a line, compare the two counts on each line, read the reason for each gap, then open sample charts to confirm the numbers match what staff see.
- Every record type in the agreed scope should have its own line, with a source count, a target count and a reason for any difference.
- Some differences are expected, such as duplicates merged or records archived on purpose. Each one should be explained in writing.
- Check the numbers against real charts, then sign off in writing before you retire the old system.
What does a reconciliation report contain?
- A line for each record type in scope, such as clients, insurance policies, appointments, diagnoses, clinical notes, documents, open claims, balances and Part 2 consents.
- The count exported from the old system and the count loaded into the new one.
- The difference on each line, with a reason.
- Records that arrived in a different form than in the old system, for example past notes delivered as read-only documents.
- Records left out on purpose, such as those you chose to archive.
- The date range covered, the time of the final export, and who prepared the report.
How do you read a reconciliation report, step by step?
Step 1: Confirm the scope
Put the report next to the written scope and the field mapping. Every record type you agreed to move should have a line. A missing line is a question to raise, even if every other line balances.
Step 2: Compare source and target counts
On each line, compare the count that left the old system with the count that arrived. Equal counts are a good sign, and they still need the spot check in step 5.
Step 3: Read the reason for every difference
Each gap should have a short written reason that names the records involved. "Rounding" or "system limits" with no detail is worth asking about.
Step 4: Check the dates and the freeze time
Confirm the report covers the full date range you agreed and that the final export was taken after the old system was frozen. Records entered after the freeze will be missing from the counts.
Step 5: Spot-check sample charts
Pick clients for every clinician, including complex ones, and open their charts in the new system. Check notes, documents, diagnoses, appointments and balances against the old system and against the report.
Step 6: Sign off in writing
When every line is explained and the spot checks agree, record who reviewed the report and when. Keep the signed report with your other project records.
Which differences are usually expected?
- Duplicate clients that were merged by agreement before the move.
- Test, inactive or empty records you agreed to leave behind.
- Records archived on purpose instead of migrated, as covered in legacy EHR data archiving.
- Items the two systems count differently, such as a recurring appointment series stored as one record in one system and as separate visits in the other.
Each of these should still appear on the report with a reason and, where possible, a list of the records involved.
Which differences need a follow-up?
- A gap with no reason, or a reason that does not name the records involved.
- More records in the new system than in the old one, which can point to duplicates.
- Notes or documents attached to the wrong client, or documents that will not open.
- Open claims or balances that differ from the old system.
- Part 2 consents or other restricted records that are no longer flagged.
List each item with the client and record type and send the list to whoever ran the migration. The checks in what to check after EHR cutover help you find these in daily use.
Who should review the report?
- The project owner, who checks the scope and signs off.
- A clinical lead, who checks notes, documents and diagnoses in sample charts.
- A billing lead, who checks open claims, balances and payer details.
Frequently asked questions
What is a reconciliation report in an EHR migration?
A reconciliation report is the written check at the end of an EHR migration. For each record type it compares what left the old system with what arrived in the new one, and explains every difference, so gaps show up before you rely on the new system.
What if the counts in the reconciliation report do not match?
Read the reason given for each difference. Expected gaps, such as merged duplicates or records archived on purpose, should be explained and listed. Any gap without a clear reason should go back to whoever ran the migration with the client and record type named.
Should every count in the report match exactly?
Matching counts are the goal for each record type you agreed to move, but some differences are normal when duplicates are merged or records are archived on purpose. What matters is that every difference is explained and that sample charts agree with the report.
Does Ferry provide a reconciliation report?
Yes. Every Ferry migration ends with a reconciliation report for every record type, comparing what left the old system with what arrived in the new one. Prices are published on the home page.
Look up terms like parallel run and cutover in the EHR migration glossary, and see where the report fits in the EHR migration checklist.
How Ferry helps
Ferry migrates data between behavioral health EHRs at a fixed price, with a reconciliation report for every record type. Get a migration quote.