Vitrubo

The numbers a biomarkers platform has to carry.

Lab scientists reviewing a result together at the bench
One code for every biomarker
17,000+

LOINC codes

Every biomarker test result that enters the platform lands on one of 17,000+ LOINC codes, with its unit in UCUM, whichever lab partner produced it. A product that changes lab partner keeps one history per person.

30

Sources behind one view

Up to 30 named publications can sit behind one view of a single biomarker. The chip beside each statement opens the guidance it rests on, for the clinician who signs and the user who reads.

FHIR R4

Native record

One FHIR R4 record per person, every result coded and dated, the source document kept. HIPAA business associate agreement for US deployments, GDPR Article 28 processing agreement and Standard Contractual Clauses as standard. Encryption in transit and at rest.

100k

Records, on premises

Roughly 100,000 anonymised hospital records read inside a clinical programme, on premises, without the data leaving the perimeter. Numbers, units, ranges and flags are computed by deterministic code, never written by a model.

Who builds on a biomarker testing platform, and what they ship.

A health app, a longevity brand and a laboratory come to a biomarkers platform from different sides. The app has users and needs results to read. The brand has a panel and a lab partner and needs a product to sell. The lab has the results and needs a product to put around them. The platform is the same in each case; what changes is which door it is reached through. In every case the professional signs and Vitrubo drafts.

Health apps and telehealth

The reading engine behind the app.

An app that wants to offer a biomarker test to its users needs a lab partner for the sample and an engine for the result. Vitrubo is the second half. The lab sends HL7 or FHIR R4, or the user uploads a PDF or a photo, the app posts it through the API and receives the structured record and the interpretation as JSON, ready to render in its own screens. Each new biomarker test regenerates the report, which is what brings the user back after every draw. The app owns the user and the screens; the platform owns nothing but the reading.

For health apps
Longevity and wellness brands

A biomarker test product without a reading team.

A brand that sells a panel under its own name has a lab partner that runs the biomarker testing and a customer who wants to understand the result. The platform sits between them: a white-label portal and PDFs in the brand's design, a plain-language view for the member and a clinician view for the brand's medical reviewer, and direction of travel read across every repeat test. The brand owns the customer, the panel and the keys; the reading engine is licensed.

Platform
Laboratories and clinics

The lab tests; the platform reads.

A laboratory that wants a consumer or corporate biomarker testing line already has the hard part: the instruments, the accreditation and the sample. What it lacks is the product around the result. Vitrubo connects to the LIS, drafts a comment beside every flagged biomarker in the lab's style for approval at the release step, raises the follow-up test worth adding while the sample is fresh, and delivers the report under the lab's brand or through a partner's portal. For a clinic the same platform gives patients their results to read between visits, in plain language, under the clinic's name.

For labs

What the platform does between the lab and your product.

Recognition: any format in

A biomarker test arrives however the lab or the user sends it: a lab PDF, a photo of a printed result, an HL7 message, a FHIR R4 bundle or JSON through the API. Hospital records, prescriptions and notes are read as context beside the values. Numbers, units, ranges and flags are computed by deterministic code, never written by a model.

Normalisation: one code, one unit, one record

Each value is mapped to one of 17,000+ LOINC codes and its unit to UCUM; conditions, medications and procedures read from context are coded to SNOMED CT, ICD-10, RxNorm and ATC. Everything for one person lands in one FHIR R4 record, so a biomarker measured by two lab partners in two years reads as one line, and reference ranges are kept per laboratory rather than replaced.

Interpretation: several models, one reading

Several AI models cross-check the same case; disagreements are resolved and omissions caught before a draft is shown. Flagged biomarkers are grouped into a few connected stories and placed in four zones: needs attention, worth watching, back to normal, always normal. Every statement links to named medical guidance, EHA, WHO, NICE, KDIGO and BSH among others, up to 30 sources behind one biomarker view.

Two views and a grounded chat

The same analysis in two registers: a plain-language view for the person whose biomarker test it is, and a clinician view with the full reasoning, connected conditions and medications, and tests to consider. Vitrudoc, an AI chat grounded only in that person's own record, sits beside either view. Your product decides which view which role sees: the clinician view is where your medical reviewer signs, the patient view is what your user opens.

Delivery: API, portal, PDF or embedded

The structured record and its interpretation come out as JSON through the API, ready for your own screens. Or the platform ships the screens: a role-based white-label portal and PDFs under your brand, for the member, the clinician and the operator. Recognition, normalisation and interpretation can be taken together or one at a time. A team that already has screens takes the JSON; a team that has none takes the portal; a team in between mixes the two.

Regeneration, history and audit

The report is not a document written once. Every new biomarker test result regenerates it against the whole record, and previous versions stay as history, so what a user read after the last draw can be revisited after the next. Each statement carries the guidance it rests on, and the platform ships as versioned builds.

Five biomarker test results, read as one record.

Emily Carter is 34. Over nine months she had a biomarker test at five visits, and no diagnosis was supplied, only her symptoms and history. This is the case a biomarkers platform has to get right for a consumer product: repeat results from a person who does not arrive with a label. The live report reads the five results as one record, pulls a dozen scattered deviations into one coherent mechanism rather than a list of unrelated flags, and does not over-attribute two side findings that had come back to normal by the latest visit. It also marks which values are stale and worth re-testing. The report is the platform's own output on a synthetic record, live at the link. Open the patient view for what a user of your app would read and the clinician view for the reasoning your medical reviewer would sign.

The record filed into folders: hospital records, medications, conditions, lab results

Connects to the lab, the EHR and your app.

LIS · EHR · your app

Full integration.

Results arrive from your lab partner's LIS as HL7 or FHIR R4, from an EHR or EMR as documents, or from your app as an upload through the API. The drafted reading flows back as FHIR or JSON into the same systems, and the follow-up test is raised from the record. No biomarker test is re-keyed by hand between the lab and the product. A lab that already returns results to a partner's portal keeps that portal; the drafted reading is added to what the portal shows.

Platform

White label, no engineering.

A role-based portal and PDFs under your brand, for the member, the clinician and the operator. A biomarker test uploaded as a PDF or a photo is read the same way as an HL7 feed from the lab. Branding, ranges and comment style are configured, not coded.

Deployment

API first.

Teams with their own app take the API alone: the FHIR R4 record and its interpretation as JSON, with a sandbox, the contract and sample payloads in PDF, HL7 and JSON. Embed the reading in your own screens and keep the platform invisible.

Developers (API)

Standards in, standards out.

LOINC for every biomarker, UCUM for units, the record kept in FHIR R4. Containers on your infrastructure or a private cloud, your keys, versioned builds from us and no access to your data.

HL7FHIR R4LOINCSNOMED CTICD-10RxNormATCJSON outFHIR outUCUM units

Why not build the reading on a general model yourself?

Because a biomarker test is a record, not a prompt, and a product needs the same answer twice.

A general-purpose model behind your own prompt

  • Reads the values in the prompt and nothing else: no previous test, no medication list, no history, unless your team builds and maintains the record that holds them.
  • Misreads a decimal or a unit in a multi-page lab PDF without noticing, and the wrong number ships to the user.
  • No normalisation: a biomarker measured in two units at two labs stays two numbers, and the trend chart is wrong.
  • Confident prose with no source behind it, so nothing for your medical reviewer to check and nothing to show an auditor.
  • Answers differently to the same input on a different day, which a product with a medical reviewer cannot explain.

Vitrubo as the biomarkers platform

  • Numbers, units, ranges and flags computed by deterministic code, never written by a model.
  • Every biomarker mapped to LOINC and UCUM, so a test from any lab partner in any year lands on one scale in one FHIR R4 record.
  • Several models cross-check the same case; disagreements are resolved and omissions caught before a draft is shown.
  • Every statement links the named medical guidance it rests on. One click opens the publication.
  • Read against the whole record, grouped into connected stories in four zones, regenerated with every new result, previous versions kept as history.
EHAWHONICEKDIGOBSH

Every statement rests on named medical guidance. The chip beside it opens the same publication a clinician would read.

From first call to production, on your own biomarker tests.

An evaluation runs on the biomarker testing your lab partner already does, in your formats, against the product you have in mind. Six steps, none of them a commitment until the last.

  1. Talk to the team

    A short call about the product you are building, your lab partner, your users and where in the flow the reading should appear.

  2. Sandbox and API docs

    Test access for your engineers, the API contract and sample payloads for a biomarker test in PDF, HL7 and JSON, and the white-label portal to click through.

  3. Run your own results

    Send real biomarker test results, anonymised. Repeat tests from the same person, from more than one lab, are the most telling.

  4. Validate the output

    Your medical reviewer reads the drafts against their own reading of the same tests; your engineers check the JSON against your screens.

  5. No commitment at this stage

    Configuration of ranges, report style, roles and branding happens here. An evaluation is an evaluation.

  6. Production when ready

    Containers inside your perimeter or a private cloud, connected to the LIS, the EHR or your app through the API, under your keys.

Questions about the biomarker testing platform.

In this market the phrase covers two different things, and it helps to separate them. One is the testing itself: the laboratory that draws or receives the sample, runs the panel and reports the values. The other is the platform that turns those values into a product: recognition of the result in whatever format it arrives, normalisation to one standard, interpretation against medical guidance, and delivery to the user and the clinician. Vitrubo is the second. It does not run a lab, ship kits, draw blood or sell tests. It is the biomarkers platform a health app, a longevity brand, a laboratory or a clinic licenses to read the results its lab partner produces.

For anyone building a biomarker testing product without building the reading engine. A health app or telehealth service that wants to offer a biomarker test to its users. A longevity or wellness brand that sells a panel under its own name through a lab partner. A laboratory that wants a consumer or corporate line around results it already produces. A clinic that wants its patients to read their own results between visits. And, through any of them, the person who holds a result and wants to understand it. Vitrubo is licensed to the business and delivered under its brand; there is no self-serve signup.

Any format a result takes. A lab PDF, a photo of a printed report, an HL7 message from a LIS, a FHIR R4 bundle from an EHR or EMR, or JSON through the API. Blood, urine and allergy panels arrive as values. Hospital records, prescriptions and notes are read as context, so a biomarker that a medication is known to move is read with that in mind. Numbers, units, ranges and flags are computed by deterministic code, never written by a model, so what the lab reported is what the record holds. Each document is kept beside the values read from it, so the source of any number can be opened.

One FHIR R4 record per person, with every biomarker test result mapped to LOINC and every unit to UCUM, and an interpretation with the guidance it rests on. Through the API this is JSON, ready to render in your own screens. Through the white-label option it is a role-based portal and PDFs under your brand. Both carry the same two views: a plain-language view for the person and a clinician view with the full reasoning, connected conditions and medications, and tests to consider. FHIR and JSON also flow back into the LIS or EHR the results came from.

Through the channels those systems already speak. A LIS sends results as HL7 or FHIR R4 and receives the drafted reading and the follow-up test back the same way. An EHR or EMR exchanges FHIR R4 documents. Your app talks to the API: it posts an upload or a payload and receives the structured record and its interpretation as JSON. The sandbox, the API contract and sample payloads in PDF, HL7 and JSON are part of the evaluation, so your engineers see the integration before anyone commits. A product that starts portal-first and moves to the API later changes the door, not the record.

By putting every biomarker on one scale. Labs name the same biomarker differently, report it in different units and publish their own reference ranges. Each value is normalised to one of 17,000+ LOINC codes and each unit to UCUM, so a biomarker test from one lab partner in one year and another the next reads as points on one line. Reference ranges are kept per laboratory rather than replaced, because the range that applies to a value is the one the lab that measured it published. A product can change lab partner, or accept results a user brings from elsewhere, without starting a second history.

In two parts that are kept apart. The numbers, units, ranges and flags are computed by deterministic code, so the same result gives the same values every time. The reading is drafted by several AI models that cross-check each other, with disagreements resolved and omissions caught before a draft is shown, and every statement links to named medical guidance: EHA, WHO, NICE, KDIGO and BSH among others, up to 30 sources behind one biomarker view. A chip opens the publication. Your medical reviewer checks the basis rather than trusting the prose, and nothing in the report is asserted without a source that can be opened.

Not a table of pass and fail. Flagged biomarkers are grouped into a few connected stories and placed in four zones: needs attention, worth watching, back to normal, always normal. For each biomarker the trend across tests sits beside the latest value and its range, with the guidance behind the interpretation one chip away. Where a repeat is worth considering, the biomarker to re-test and the interval are named. Vitrudoc, an AI chat grounded only in that person's own record, can answer questions beside the report. The same report is available as a PDF under your brand, for the user who wants to bring it to an appointment. The Emily Carter live report shows five results read this way.

The report regenerates against the whole record, not only the new biomarker test. A value that has come back into range since the last test is named as such, a value that has never moved is said to be steady, and a new deviation is read beside the earlier ones rather than on its own. Previous versions of the report stay as history, so what the user read after the last draw can be revisited after the next. For a product this is the mechanism that brings a user back after every test. It runs the same whether the result came from the lab's feed, from an upload in your app or from a hospital record the user added.

No. Vitrubo performs no laboratory testing and sells no biomarker test of its own. The testing is done by your lab partner, or by your own laboratory if you are one. Vitrubo is the platform layer that turns those results into the product: reading, normalisation, interpretation and delivery. Where a page or a product describes a biomarker test, the test is the lab's and the reading is Vitrubo's. The platform is licensed to the business that owns the product; access is by invitation after an evaluation on your own anonymised results, and there is no published price list.

No. Vitrubo is not a diagnostic device, does not select or recommend treatment and does not replace the clinician or the lab scientist. It drafts a reading of the results that are there, organises the record and names tests worth considering; where a professional is involved, the professional reads and signs. For a person reading their own biomarker test in your product it is educational context to bring to an appointment, not medical advice, and the report says so.

In containers on your infrastructure or in a private cloud that you control. You own the keys. Vitrubo ships versioned builds and has no access to the data. Identity never enters the prompt: the models see values and an internal ID, never a name. A HIPAA business associate agreement for US deployments, a GDPR Article 28 processing agreement and Standard Contractual Clauses, encryption in transit and at rest. Roughly 100,000 anonymised hospital records have been read this way on premises in a clinical programme.

Yes. The API returns the FHIR R4 record and the interpretation as JSON, and your app renders it in its own screens; the platform stays invisible to the user. Recognition, normalisation and interpretation can be taken together or one at a time, so an app that already structures its data can take interpretation alone. The white-label portal and PDFs are there for teams that would rather not build screens, and the two can be mixed: API for the app, portal for the clinician. Either way the record stays in your containers under your keys.

The record, the reasoning and the version. The record: one FHIR R4 record per person, with every biomarker test result coded and dated, and its source document kept. The reasoning: every statement carries the named guidance it rests on, so the basis of any sentence a user read can be opened. The version: previous reports stay as history and the platform ships as versioned builds. Together with the data processing agreements, this is what a partner's due diligence usually asks for.

Yes, through an app, brand, lab or clinic that offers Vitrubo under its own brand. The person uploads the PDF or a photo of the biomarker test and reads the plain-language view: what stands out, why it is grouped that way, and what to discuss with a doctor. Earlier tests uploaded alongside are read into the same history, so one test is read on its own and several are read as a line. Vitrudoc can answer questions about the result, grounded only in that person's own record. The reading runs inside the product the person is already using; there is no separate signup with Vitrubo.

With a call about the product you are building, then sandbox access and API documentation. Your team runs its own anonymised biomarker test results, ideally repeat tests from the same people and from more than one lab, and your medical reviewer validates the drafts against their own reading while your engineers check the JSON against your screens. There is no commitment at that stage. Production follows when you are ready, in containers inside your perimeter or a private cloud, connected to the LIS, the EHR or your app.

Demo cases

Invented people, real product. Every case is a synthetic record with a stock portrait: no real patient, no real result. The reports are live.

See the platform behind your own product.

A walkthrough on the biomarker testing your lab partner already runs, sandbox access and API documentation for your engineers, and a drafted report on your own anonymised results. The evaluation runs in your formats, from your own lab partner, against the product you have in mind. Or open a live report first.