Any retina specialist running an anti-VEGF practice knows the quiet problem. The injections themselves are routine; keeping a clean, longitudinal record of them is not. Visual acuity lives in one place, OCT measurements in another, the molecule and lot number on a sticker, the next appointment in someone’s head at the patient front desk. When you want to answer a simple question, is this eye actually responding, or am I extending an interval on a patient who is slowly losing letters?, the data is rarely in front of you in a form you can read.
We built an intravitreal injection registry to close that gap, together with a private medical-retina clinic in Estonia. This article walks through what it does and how it is meant to help you, with a public demo you can open at transtorm.ai/demos/demo-ivt.
What the registry is for
Three goals, in plain terms. First, make encoding an injection visit fast and reliable, so the record reflects what actually happened at the slit lamp. Second, make the data readable: functional outcomes (ETDRS letters) and anatomical outcomes (central subfield thickness, CST) trended per eye and across the cohort. Third, help you evaluate which treatment is working, by molecule, by protocol, and over time. Everything else in the application serves one of those three ends.
In practice, the registry brings into one place what is scattered today between the device, paper, and the team’s memory:
| Data for one eye | Without a registry | With the registry |
|---|---|---|
| Visual acuity (ETDRS) | paper chart or free text | per-eye timeline, delta versus baseline |
| OCT (CST) | device export | trend curve, explicit thresholds |
| Molecule and lot number | sticker on a label | structured field, traceable by lot |
| Next appointment | in someone’s head at the desk | protocol-aware recall |
| Treatment response | reconstructed by hand | outcomes-by-molecule, at cohort scale |
Reliable encoding, in four steps
The encoding flow follows the way you actually think during a visit: pick the patient, pick the eye, confirm the clinical context, then record what you did.
Before you type anything, the registry shows a clinical-context card for the selected eye: the diagnosis, the last molecule injected, the most recent ETDRS and CST, the cumulative injection count, the weeks since the last injection, and an overdue badge if follow-up has slipped. You start the visit already oriented.
The form itself is structured, not free text. ETDRS and CST are carried over from the previous visit and flagged “verify” with a coloured border until you actually confirm or change them, so a value is never silently inherited. Clinical fields use controlled vocabularies rather than typed strings:
- Molecule: aflibercept, ranibizumab, bevacizumab, faricimab, brolucizumab, or dexamethasone implant.
- Protocol: loading, treat-and-extend, PRN, or fixed interval, with a planned interval in weeks.
- Fluid: IRF, SRF, PED toggles, or “dry”.
- Complication: a closed list (none, subconjunctival haemorrhage, transient IOP rise, inflammation, endophthalmitis, retinal tear, other).
- Lot number: captured per injection for safety surveillance.
Crucially, the safety checks are non-blocking. After you save, the registry surfaces alerts: an ETDRS drop greater than 15 letters versus the last visit, a CST rise greater than 100 µm, a recorded complication, a missing lot number, an overdue eye. These inform; they never stop you from recording reality. The only hard rule is that an injection must name its molecule.
Reading outcomes at a glance
Thursday morning, slit lamp. Dr Tamm opens the record for Mrs Saar’s right eye: her timeline fits on one screen. ETDRS has been stable for three visits, but CST has crept back up since the switch to faricimab, marked with a badge on the curve. The decision takes a few seconds: shorten the interval rather than extend it. No sheet to dig out, no figures to piece back together from memory.
The point of clean encoding is what it lets you see afterwards. Each eye has its own timeline: baseline and latest ETDRS and CST, the deltas between them, and two trend charts plotting letters and thickness over time. First injections and molecule switches are marked directly on the curves, so a change in trajectory lines up visually with the change in treatment that may explain it.
The sign conventions are made explicit so nothing is ambiguous: for ETDRS, higher is better (a green delta is a gain); for CST, lower is better (a green delta is a reduction in thickness). The chronological table highlights the clinical signal for you (a large vision loss or fluid rise in bold red, a molecule switch as a badge, missing values flagged, complications tinted) instead of leaving you to scan rows of numbers.
Evaluating the best treatment
At the cohort level, the dashboard turns the registry into answers. Headline KPIs (mean ETDRS gain, mean CST reduction, complication rate, data completeness) sit alongside an outcomes-by-molecule comparison so you can see, in your own population, which agents are delivering the functional and anatomical results you expect. Switches are tracked, so a weak responder moved from one molecule to another remains legible as a single continuous story rather than two disconnected records.
The recall logic is protocol-aware: only eyes on a scheduled protocol are flagged overdue, with a sensible fallback cadence and a grace period, so you are nudged about the patients who genuinely need to come back. A dedicated data-quality page scores completeness and lists anomalies (missing measurements, missing lot numbers, eyes without a diagnosis), each row linking straight to the eye that needs fixing.
Beyond one clinic: clinical studies
Six months on, the end of enrolment for an observational study. The coordinator exports the registry: a pseudonymised CSV, one row per visit, no identifying data. The biostatistician receives it ready for analysis, with the same molecules, protocols, and endpoints that were entered in clinic. The case report form was never re-keyed.
Because the registry is built on controlled vocabularies and explicit clinical thresholds, the same configurable engine adapts to clinical research. It exports a pseudonymised, one-row-per-visit CSV with no directly identifying data, ready for a biostatistician or an observational-study dataset. The molecules, protocols, endpoints, alert thresholds, and forms can be tailored to a study’s protocol, which makes it a practical backbone for real-world-evidence work as well as routine care.
What this demo shows, and what it doesn’t
In the interest of honesty: the public demo runs on synthetic data and is not a medical device. It also deliberately omits three automations that exist in the production deployment, to keep the demo self-contained:
- daily injection planning (auto-scheduling the next appointments from the protocol),
- automatic retrieval of visual acuities, and
- automatic capture of ETDRS and CST from the connected systems.
What you see in the demo is the clinical core (encoding, visualization, quality reporting, and export), exactly as a retina specialist would use it.
Try it, or talk to us
Open the live demo at transtorm.ai/demos/demo-ivt and walk through encoding a visit and reading an eye’s timeline. If you would like a registry shaped around your own clinic or study, with your molecules, your protocols, and your endpoints, book a conversation with transtorm.ai below.
Book a call