Skip to main content

Years of paper records, read into data.

Neil reads scanned batch records, logbooks and forms into Seal, with every value linked to its place on the scan. Trend across years and find every earlier fault without pulling a box. Anything unclear goes to a person.

  1. Pencil drawing: a small seal looks up at tall shelves of archive boxes labelled 2017 to 2024.

    Years of records, in boxes.

    Every lot your site has made is on paper somewhere, and none of it can be searched or trended.

  2. Pencil drawing: a seal holds a magnifying glass over one handwritten entry, with a red thread from it to the matching row on a laptop.

    Neil reads every page.

    Each handwritten entry becomes a value in Seal, linked to the place on the scan it came from.

  3. Pencil drawing: one seal points at a smudged number marked with a red question mark while another checks the original binder.

    When the reads differ, it asks.

    Values checked against a limit are read twice. If the reads differ, a person checks the original.

  4. Pencil drawing: a seal looks at a laptop chart of many lots with one red point, archive boxes closed behind it.

    Then every lot is one question away.

    Trend a parameter across years, or find every earlier time a fault happened.

What years of records are for.

Questions that meant pulling boxes, answered in seconds. Here from the Acme test network: 6,300 fictional lots at three sites.

  • Recalculated, within limit
    7
    Planned deviation
    6
    Deviation
    6
    Lot 24-0917
    An email

    Every earlier time a fault happened.

    Holds over 24 hours before filtration at Site 1 since 2023, and how each was settled. This lot’s rests on an email.

  • Stops of 5 min or more
    61
    Missing from the batch record
    10

    What the paper left out.

    Line 2’s log against what each batch record says. Nine of the ten never reached a deviation either.

  • 2023
    40%
    2024
    39%
    2025
    38%
    2026
    36%

    Trends across years.

    Printouts with no verifier’s initials, as a share of lots at one site. Over a third, every year.

  • 5 open checks
    02
    575 earlier lots on its line

    A baseline for batch review.

    Lot 24-0917 against every earlier lot on its line. None had more than two checks open.

One scanned record, read.

Real Seal screens from a 212-page handwritten batch record with 4,629 entries: Acme Biologics lot 24-0917, a fictional test lot.

  1. 1

    Handwriting, corrections included.

    Neil reads what was written, what was struck through, and whether the correction was made the way your procedure requires.

    Seal showing check C-33, GDP corrections: a struck-through sucrose weight on page 23 read from the handwriting, with no correction initials, date or reason, and the scanned page open with the row outlined.
    1. A correction, read and judgedA struck-through weight on page 23, with no initials, date or reason beside it.
    2. The entry, from the handwriting8.251 struck through, 8.215 kg written beside it, initialled BdJ on 28-Sep-26.
    3. The row on the scanOutlined on page 23 of 212.
  2. 2

    When the ink is unclear, a person settles it.

    Two reads of the same entry disagreed. Neil shows both, and a person checks the original.

    Seal showing check C-08, room conditions: the reading on page 9 is 27 or 21 °C because two reads of the ink disagree, the room’s other readings on pages 28 and 44, and the scanned page open with the row outlined.
    1. Two reads that disagreeThe page reader and a second look at the ink read 27 and 21 °C. Either could be right.
    2. A person settles itA named reviewer checks the original page and records the outcome.
    3. The row on page 9Written against an 18 to 25 °C limit, with “Within limit” ticked Yes.
  3. 3

    Every value, back to its place on the page.

    A value Neil read and checked, with the scanned page open at the line it came from.

    Check C-09, pre-filtration bioburden, in Seal: why it is met, decided by code, the places Neil read, and the scanned batch record open at page 41 with the sampling entry outlined.
    1. Values, checked against the formThe sample time against the bulk completion time, and the result against its limit.
    2. Decided by codeTimes and limits are calculated in code, not judged by the model.
    3. The line, outlinedStep 6.3.21 on page 41: sampled 30-Sep-26 at 07:05, initialled and checked.
  4. 4

    Then ask the record anything.

    A question about one reading, answered from the whole record, every claim citing its page.

    Neil in Seal answering a question about check C-08: why the page 9 reading is unsure, what the step’s own instruction says, the room’s other readings with their pages, and what closes the check either way.
    1. Where the record contradicts itselfIf the ink says 27 °C, processing started against the step’s own instruction, and the room readiness check under it was signed anyway.
    2. Every value with its pageEach reading Neil cites opens the scan at its page.
    3. 43 secondsFrom question to answer.

What your quality team will ask.

Measured on synthetic batch records with known answers.

  • Faults planted
    35
    Misread
    0

    Will a real fault get misread?

    Out-of-limit values, blank sign-offs, corrections with no reason: all 35 we planted were read as written.

  • Four writers
    99.6%
    The fifth
    73.5%
    The record
    96.3%

    What about the operator with bad handwriting?

    Averages hide that person. Every value keeps the writer’s initials, so the hard hand is found before you rely on the data.

  • Written
    ”
    Neil reads
    A ditto mark, not a value

    And ditto marks and arrows?

    Many procedures ban them, so one shouldn’t pass as a number. Neil named 93 of 99 in our benchmark.

  • 30 values
    under 10%
    299 values
    under 1%
    2,995 values
    under 0.1%

    How much do we have to check?

    Fewer than you’d think. A clean sample of 299 shows an error rate under 1%, at 95% confidence.

Neither people nor AI read paper perfectly.

So Neil reads handwritten values twice, sends what differs to a person, and your team samples the rest. Measured on test records with known answers.

People, by handPublished studies

6.57%
of values wrong when people abstract data from records by hand.Meta-analysis, Int. J. Medical Informatics, 2025
30×
as many errors left by proofreading as by keying everything twice.Computers in Human Behavior, 2011

AI alonePreprint, 2026

85%
of fields read right by leading AI models on real handwritten forms.Pather et al., arXiv

Neil, with your teamSeal’s benchmark, November 2026

97.2%
of synthetic handwritten values right on the first read.2,219 values, known answers
0.8%
of synthetic values still wrong and unflagged after a second read.18 of 2,219, before anyone samples

Start with your worst binder.

Bring one product’s executed records and your own transcription of its hardest pages. Neil reads them, you compare value by value, and you decide what a person verifies. The scan stays the original throughout.

Book a demo

Summary

The problem
Years of executed batch records, logbooks and forms sit in binders and scans. None of it can be searched or trended, so every question about past lots means pulling boxes.
Seal’s approach
Neil reads each page into values, keeps every value linked to its place on the scan, reads values checked against a limit a second time, and sends disagreements to a person.
What changes
Past lots become one question away: trends across years, every earlier occurrence of a fault, and a baseline each new lot is reviewed against.
Where to start
One binder, compared value by value with your team’s own transcription of its hardest pages, split by writer. Book a demo.

1Read the page, and keep the page.

Years of executed batch records, logbooks and forms sit in binders and scans. They hold the history of every lot a site has made, but a question about them means pulling boxes. Neil reads each scanned page into values in Seal: the entry, its row and field on the form, the initials and date beside it, and where on the page it was written.

The scan does not go away. Every value keeps its link to the place on the page it came from, so anyone checking it opens the scan at that line. US rules let records be kept as true copies of the originals,¹ and UK guidance defines a true copy as one verified to carry the same information, context and structure as the original.² Whether a scan stands in for the paper is your quality unit’s decision under your retention procedure. The data read from it is a reading, linked to its source.

2Never rely on one read.

People abstracting values from records by hand get a share of them wrong, and a second person proofreading catches far fewer errors than keying everything twice.³⁴ Leading AI models read handwritten forms better than they did, and still not well enough to rely on alone.⁵ So Neil doesn’t use one read.

On eight synthetic handwritten batch records with known answers, Neil’s first read got 97.2% of 2,219 values right, from 98.9% on clean scans to 94.8% on poor ones.⁶ A handwritten value checked against a limit is then read again from a crop of the scan, however sure the first read was. That left 0.8% of values wrong and unflagged, before anyone had sampled them. All 35 faults planted in those records, from out-of-limit values to corrections with no reason, were read as written.

Each value is checked in code against what the form asks for: its limits, units, dates, sequence and signatures. A value that can’t be found where it is said to be is thrown out. When two reads disagree, nothing is saved until a person has checked the original. A confidence score shows a reviewer where to look first; what goes unchecked is decided by these controls and your own sample.

3Send what can’t be read to a person.

On the test record, the room temperature at step 3.2 on page 9 reads 27 °C to the page reader and 21 °C to a second look at the ink. The limit is 18 to 25 °C, and “Within limit” is ticked Yes. Neil doesn’t pick one. It shows both reads, the same room’s readings elsewhere in the record, and the named reviewer who checks the original.

Page 9, step 3.2

Room temperature
27 or 21 °C
Limit
18 to 25 °C
Within limit
Yes
24-0917 › C-08
Open
First read
27 °C
Second read
21 °C
Saved
Neither, yet
Settled by
A reviewer, at the page
Figure 1. A handwritten room temperature that reads as 27 or 21 °C stays open in Seal, with both reads, until a reviewer checks the original page

Reading the whole page also finds what typing values into a spreadsheet passes over: a weight struck through and rewritten with no initials, date or reason beside it, or a printout initialled by its analyst and by no verifier.

Some marks aren’t values at all. Many quality systems ban ditto marks and down arrows outright,⁷ so one shouldn’t pass as a number. In our benchmark Neil named 93 of the 99 marks, with 8 false alarms across the 2,219 values. If your procedure bans them, make that a check.

4Validate it on your own worst pages.

Test the reading the way you would test a new transcriber, for the use you intend. Pick your hardest pages: the worst handwriting, faint copies, crossed-out corrections and pages written over twice. Have your team key a sample by hand the way it would today. Neil reads the same pages, and you compare them value by value, with each difference shown beside the page that settles it.

Count two kinds of miss apart. A wrong value that passed is the one that matters: it’s how a lot that should have stopped gets through. A right value held for a person costs a minute. Split both by writer and by field. On one synthetic record, four writers came in at 99.6% and the fifth at 73.5%, whose initials, OI, were read as 01, and the record’s average still said 96.3%.

Then size the sample for what you need to show. With no misses in a sample, the most you can claim at 95% confidence is about three divided by the number of values checked:⁸ under 10% from 30 values, under 1% from 299, under 0.1% from 2,995. One full batch record can hold thousands of entries, so these numbers are within reach.

From that comparison your quality unit decides what a person verifies, and the closer a value sits to a decision about product, the more it needs. FDA’s draft guidance on AI frames risk the same way: how much the model’s output counts, and what a wrong decision would cost.⁹ A trend across past lots might take a sample. A value behind a batch review check might take a person every time. Keep sampling new records by hand after go-live, and repeat the comparison when the model, the forms or the scanning change. Neil’s part stays the same throughout: it reads and proposes, and people verify and decide. See how Neil fits the EU’s draft Annex 22.

5Use what years of records hold.

Once past lots are data, questions that meant pulling boxes take seconds. Trend a parameter over every lot for continued process verification or a product quality review. Find every earlier time a fault happened, even when it was only ever written on paper. Hold a new site’s first lots against the original site’s history in a tech transfer.

Each new lot can then be reviewed against the ones before it. In batch release, Neil compares a lot with earlier lots on the same line and asks QA about anything outside what they show.

6Start with one binder.

Bring one product’s executed records, or one logbook, and your team’s own transcription of a few of its hardest pages. Compare what Neil reads with what your team keyed, writer by writer, decide what a person verifies, then read the rest of the binder.

References

  1. 121 CFR 211.180(d): records required under part 211 may be retained either as original records or as true copies, such as photocopies, microfilm, microfiche or other accurate reproductions of the original records. eCFR
  2. 2MHRA, ‘GXP’ Data Integrity Guidance and Definitions, March 2018: a true copy is a copy of the original record, verified by a dated signature or generated through a validated process, that has the same information as the original, including the data that describe its context, content and structure. GOV.UK
  3. 3Garza et al., Error rates of data processing methods in clinical research: a systematic review and meta-analysis, International Journal of Medical Informatics, 2025: medical record abstraction had a pooled error rate of 6.57%. DOI
  4. 4Barchard and Pace, Preventing human error: the impact of data entry methods on data accuracy and statistical results, Computers in Human Behavior, 2011: visual checking resulted in 2,958% more errors than double entry. DOI
  5. 5Pather et al., arXiv preprint, 2026: on a real handwritten medical form, the latest Google and OpenAI models reach accuracies around 85% on predefined fields. arXiv
  6. 6Seal’s benchmark of its page reader, October and November 2026: eight fully synthetic executed batch records, two at each of four scan qualities, with known answers. The 2,219 values leave out signatures, ticks, blanks and the 99 ditto marks and arrows. A wrong read has a reading that differs from what was written, and a further 7 values were not read at all. Synthetic handwriting is not your handwriting, so measure your own pages.
  7. 7Indian Pharmacopoeia Commission, Good Documentation Practices, IPC/GD/08, September 2021: use of ditto marks or down arrows to fill in repetitive entries should be strictly prohibited. Company procedures elsewhere set the same rule. IPC
  8. 8Hanley and Lippman-Hand, If nothing goes wrong, is everything all right? Interpreting zero numerators, JAMA, 1983: with no events in n trials, the upper 95% confidence limit is about 3/n. The figures here are the exact values. DOI
  9. 9FDA, Considerations for the Use of Artificial Intelligence to Support Regulatory Decision-Making for Drug and Biological Products, draft guidance, January 2025: model risk depends on model influence and decision consequence. FDA

AConnected across Seal

BCapabilities

CapabilityWhat it covers
Page readingRead printed and handwritten entries from each scanned page into values, with the page, row and position they came from.
Second readsRead each handwritten value checked against a limit again from a crop of the scan and keep both reads. A disagreement stays open for a person.
Form checksCheck each value in code against the form’s limits, units, dates, sequence and required signatures.
Corrections and initialsRead struck-through entries, corrections and initials, and flag a correction made without what your procedure requires.
Source linksOpen the scan at the place any value was written.
Verification samplingVerify every value, or a sample your quality unit sets from a comparison on your own pages, split by writer and by field.
Questions across recordsAsk Neil across lots and years: trends, earlier occurrences and comparisons, each answer citing its pages.

CConnected records

Entity
What it records
Kind
Scanned Record
A scan of a paper record kept under your retention procedure: an executed batch record, logbook, form or printout, with its page count and source.
type
Executed Batch Record
A completed batch record for one lot: steps, readings, materials, corrections and signatures.
template
EBR 24-0917
Scanned executed batch record for fictional test lot 24-0917: 212 pages and 4,629 handwritten entries.
instance
Equipment Logbook
Dated entries of use, cleaning, maintenance and status for one piece of equipment or one room.
template
Page
One page of the scan, with its number and the position of everything printed or written on it.
type
Read Entry
A value read from a page: the text, its row and field on the form, its position, and the initials and date beside it.
type
Page 9, step 3.2
Room temperature, read as 27 °C by the page reader and as 21 °C on a second look.
instance
Second Read
A second read of a handwritten value from a crop of the scan, kept beside the first.
type
Reading Discrepancy
Two reads that disagree, or a value the form doesn’t allow, held open for a person.
type
Page 9 reading
Open until the named reviewer checks the original page and records which it says.
instance
Verification
A person’s check of read entries against the page, for every value or a set sample, with the outcome.
type
Verification Sampling Plan
The share of values a person checks, set by the quality unit from a comparison on the site’s own pages.
template
Record Dataset
A record’s verified values as data, each linked to its page, ready to trend and compare across lots.
type

DQuestions and answers

Does Seal replace the paper or the scan?

No. The scan, and the paper where your procedures keep it, stays the record you hold. Values read from it are data that point back to the place on the page they came from.

Which records can Neil read?

Scanned executed batch records, equipment and room logbooks, forms and annotated printouts, printed or handwritten. Start with the records whose questions you most need answered.

How accurate is the reading?

It depends on the pages: the handwriting, the copies and the forms. On our synthetic records the first read got 97.2% of 2,219 values right, and 0.8% stayed wrong and unflagged after the second. Measure it on your own hardest pages against your team’s transcription before relying on it, and set what a person verifies from that comparison.

What does a confidence percentage mean?

It shows a reviewer where to look first. What goes unchecked is decided by the second read, the checks in code and a sample your quality unit sets from a comparison on your own pages.

What happens when an entry can’t be read for certain?

A handwritten value checked against a limit is read again from a crop of the scan, however sure the first read was. If the two reads disagree, the value stays open, with both reads shown, until a person checks the original.

What about ditto marks and arrows?

If your procedure bans them, make that a check, so that one is a finding rather than a value. In our synthetic benchmark Neil named 93 of 99.

How do we validate it?

As you would a new transcriber, for your intended use. Pick your hardest pages, key a sample by hand, compare value by value, and count wrong values that passed apart from right values held for a person. Split both by writer and by field, set what a person verifies by how close the value sits to a decision about product, keep sampling after go-live, and repeat when the model, the forms or the scanning change.

How many values do we need to check?

It depends what you need to show. With no misses in a sample, the most you can claim at 95% confidence is under 10% from 30 values, under 1% from 299 and under 0.1% from 2,995. Check enough for every writer and field that matters, not only enough overall.

Is our data used to train AI models?

Under Seal’s agreements, your data is not used to train the underlying AI models.

Can Neil compare new lots with the old ones?

Yes. Once past records are data, Neil reviews each new lot against the ones before it, and its questions cite the earlier lots they compare with.

See your process in Seal.

Bring a procedure or a recurring problem. See how your team configures it with Neil and improves the next run.

Book a demo