PDFs, scans and phone photos of lab reports and health records become structured data: each value with its test, a LOINC® code and a normalised unit. Confidence flags and human-in-the-loop review keep the output reliable.
Built for the variety of real lab reports: different layouts, test names and units.
Text recognition with Google Document AI and interpretation by a large language model. No template per lab.
Each result is matched to a test in our catalogue, which carries LOINC-style codes, so the same test from two labs means the same thing.
Units are converted to a common form, so results from different labs and countries line up over time.
Every value carries a confidence signal. Uncertain values are flagged instead of passed on silently.
Flagged values go to a reviewer, who confirms or corrects them before they are used.
An asynchronous pipeline handles one upload from an app or a full archive of records.
A lab report or record arrives as a PDF, a scan or a phone photo.
OCR reads the page. A language model works out which lines are tests, values and units.
Values are matched to catalogue tests with LOINC® codes and converted to common units.
Low-confidence values are flagged and routed to a reviewer.
Structured results go to your API, files or HL7® FHIR® server.
Automation handles the clear cases. When a value is hard to read, a unit is missing or a test name does not match the catalogue, the result is flagged and waits for a reviewer.
value unclear on scanNeeds reviewunit not printedNeeds reviewcorrected by reviewerApprovedname differs from catalogueApprovedResults are delivered as JSON through an API, as CSV, or as HL7® FHIR® Observation resources. We agree the exact format per project.
{
"document": "lab-report.pdf",
"results": [
{
"test": "Haemoglobin",
"loinc": "718-7",
"value": 14.2, "unit": "g/dL",
"confidence": "high",
"review": "not needed"
},
{
"test": "Vitamin D (25-OH)",
"loinc": "62292-8",
"value": null,
"confidence": "low",
"review": "pending" // human-in-the-loop
}
]
}Structure lab reports from other labs, or digitise an archive of paper and PDF records so results can be followed over time.
Turn participants’ existing lab reports into coded data for a study, alongside the data you collect yourself.
Let users upload a lab report and receive structured results, without building the recognition yourself.
Lab reports are our core: PDFs from labs, scans and phone photos. Other health records can be processed as well; we start with a sample of yours.
On a sample of your own documents. We show where extraction is reliable and where review is needed, and set the review step accordingly.
An international coding system for lab tests and observations. A LOINC code tells software which test a result belongs to, whatever the lab called it.
Yes. The same pipeline runs in batches. We begin with a small sample to agree on the output and the review process.
For projects, we host and process the data in the EU. We agree the setup with you before any data is shared.
No. It structures and organises data. It does not interpret results medically or make clinical decisions.
Share a few anonymised lab reports and we will show you the structured output, including what would go to review.