Marked register

Turn a scanned marked register into turnout data.

Upload the polling station registers the council sends back. Cadrify reads the marks, matches every row to an elector and records who voted.

A digitisation project page for one polling district, showing rows read, rows answered by the reader, rows waiting for a volunteer and the elector matches.

After an election the council can supply the marked register: the polling station copy with a line through everyone who voted in person and a letter beside the postal voters. For most councils it arrives as a scan of the paper, a PDF per polling station, and until now the only way to use it was to key thousands of rows by hand.

Cadrify cuts every page into single rows and reads the mark on each one from the shape of the ink. It is a purpose-built classifier, not a language model, and your scans are never sent to an outside AI service. Rows it is sure about are recorded straight away. The few it cannot read go to your volunteers one row at a time, and you check a sample of what it decided from the project page.

Every row is matched to the electorElector nounA person entitled to vote who appears on the electoral register at their address.In Cadrify Every elector is a single ongoing record in Cadrify. Door-knock history, score, voting history and contact details all attach to that one person across every register import and every campaign that uses it. it names, so the result is not a spreadsheet of numbers but a mark on each person's record. Filters, rounds and polling day plans read it the moment it lands.

How digitisation works

1

Upload the scans and choose who reads them

Set the borough and election date, confirm the ballots that election covered, then drag in the register PDFs, up to 100 in a batch. Add the council's absent voters list alongside if you have it, which gives the reader the postal voters up front.

Then pick a route. Digitise with volunteers hands every row to your team. Digitise automatically with review lets the reader answer the rows it is sure about and sends the rest to volunteers. Neither carries a processing charge.

The upload step with the two reading methods side by side: digitise with volunteers, and digitise automatically with review.
2

The reader reads the ink, not the words

Each row is cut from the page and the reader looks at the zone between the elector number and the name. It groups the ink into shapes and names each one: a pen stroke through the entry is a vote, a printed letter is a marker, a speck is scanner dust. Anything it cannot explain is left for a person.

On 907 rows adjudicated by hand across three councils' scans it made no errors on the rows it was confident about, leaving between 1 and 4 rows in 100 for review. On a borough-sized project, volunteers blind-keying 36,000 rows the reader had called as not voted agreed with it 99.8% of the time.

The check the reader's answers panel: a sample of row crops with the reader's verdict beside each and buttons to confirm or correct it.
3

Every row is matched to an elector

The printed elector number is the first key. Cadrify checks how well the scan's numbers line up with the register it holds for that district before it trusts them, and confirms the surname on every number match. Where the numbers have drifted, because the register was republished after the election, it matches by name and address instead.

That is why the register you hold should be from as close to polling day as possible. A row that matches nobody is never answered on anyone's behalf. It is queued for an organiser to place by hand.

The project page's matching summary: rows matched to electors, rows still to place and the district they belong to.
4

Volunteers key the rest, one row at a time

A volunteer opens the entry screen on a phone or a laptop and sees one row crop at a time: voted, postal or did not vote. Rows are claimed as they are served so two people never key the same one, undo is a tap, and a row that looks wrong can be flagged for an organiser rather than guessed at.

Every keyed row counts on the volunteer leaderboard. A ward's worth of rows goes quickly when a handful of people take a district each.

The volunteer entry screen on a phone: a single cropped row from the scan with voted, postal and did not vote buttons beneath it.
5

Turnout lands on the record straight away

Each answer writes to that elector's voting history for every ballot they were eligible for at that election. Your filters read it live: a filter for people who voted in 2024 but not in 2026 fills in as the project progresses, and a knock-up list for the next election can lean on it from day one.

An elector's record after digitisation, with the voting history panel showing which elections they turned out for.

In practice

The week after polling day

Request the marked register from the council while you are still in campaign mode. When the scans arrive, one organiser uploads the batch for the borough and picks automatic with review. The reader has done most of the work before the upload page has closed, and the volunteers on your hub see the rows that are left.

A council that sends a spreadsheet

Some councils now supply the marked register or the postal returns as a CSV or Excel file. Those go through the spreadsheet import instead, mapped to the same elector records, and skip the reader altogether.

Building a turnout history

Do this after every election, local and parliamentary, and each elector's record accumulates a turnout history. By the third election you can filter on people who always vote, people who only turn out for a general election and people who have never voted, and plan the campaign around them.

Trusted volunteers only

The rows show electors' names, so digitising is not open to everyone on the hub. An organiser switches it on for each volunteer they trust, or issues a one-time link tied to a single project. Each volunteer sees one row at a time and never the whole register.

FAQ

Does it send my marked register to an AI service?

No. The reader is a shape classifier that runs inside Cadrify. It looks at the ink in one zone of each row and decides whether it is a pen stroke, a printed letter or noise. No page, crop or name is sent to a language model or to any third-party AI service.

How accurate is it?

On rows it is confident about, the reader made no errors across 907 hand-adjudicated rows from three different councils' scans, and on 36,000 blind-keyed rows from a borough project it agreed with careful volunteers 99.8% of the time. Anything it is not sure about, between 1 and 5 rows in 100, goes to a person. You can also check a random sample of its answers from the project page at any time.

What does it cost?

Nothing beyond your subscription. Both routes, volunteers and automatic with review, are included. There is no per-row or per-page processing fee.

Will it read my council's scans?

The reader was built and tested on scans from several councils with different software, print layouts and scanner quality, including photocopied pages with no text layer. Each file's cover page is checked against the election you set before it is queued, so a register from the wrong election is turned away rather than read.

Which register do I need to hold?

The one in force at the election, or the nearest you can get. Rows are matched by elector number first, so a register from the same publication makes matching near enough automatic. If your register is newer and the numbers have moved, Cadrify notices and matches by name and address instead.

Who can see the rows?

Only people an organiser has approved for digitisation, and only one row at a time. Approval is a per-volunteer switch on the hub. A one-time link can also be issued for a single project and nothing else. Every row keyed is attributed to the person who keyed it.

Can I do this for any election?

Yes. Set the borough and the date and Cadrify resolves the ballots that were held, parliamentary, local, mayoral or a by-election. Turnout is recorded against each ballot, so you can filter on any one election or on a type of election later.

What about postal voters?

A letter A beside an entry marks a postal voter. The polling station register proves they hold a postal vote, not that the ballot came back, so those rows are recorded as postal rather than voted. Import the council's postal returns file to record who returned one.

What this means for your campaign

The marked register goes from a box of paper nobody has time to key into the most useful data a local campaign holds. An organiser uploads the scans the day they arrive, the reader does the bulk of the reading, and a few volunteers finish the rest from their phones over a week.

After that, who votes is a filter rather than a guess. Rounds, leaflets and the polling day plan for the next election are built on turnout you measured yourself.

See Cadrify in action

Book a demo and we will walk you through it on a real ward.