Menu Digitisation: Printed Menus to Structured Data
A photo of the menu goes in. Dishes, prices, modifiers, allergens and dietary tags come out — in the shape a delivery platform or a POS actually wants.
- Reads printed, handwritten and PDF menus, in any layout
- Allergens and dietary tags derived from the dish description
- Output shaped for delivery platforms, not a generic dump

- Per menu
- ~30 secPer menu
- Chalkboards to PDFs
- Any layoutChalkboards to PDFs
- Allergens flagged
- EU 14Allergens flagged
- Reply from the engineer
- 24hReply from the engineer
What is menu digitisation?
Menu digitisation is turning a menu that exists as a picture — a print-ready PDF, a photograph of a laminated card, a chalkboard — into structured records: one row per dish, with name, description, price, section, and whatever else the destination system needs.
It sounds trivial until you look at a real menu. Prices sit in a column that only lines up visually. A dish has two prices for two portion sizes. Half the section is in one language and the specials are handwritten. There are modifiers that apply to some dishes but not others, and the only thing indicating that is a footnote and a symbol.
The work is usually done by hand, and at scale it is genuinely expensive. Onboarding a restaurant onto a delivery platform means someone retyping the whole menu, and the cost of that typing is why platforms and POS vendors cap how many venues they can bring on in a month.
The second half of the job is allergens. A description says "pesto" and the allergen list needs to say nuts and milk. That inference is a different problem from reading the text, it carries real consequences when it is wrong, and it is the part where a system should flag rather than assert.
How it works
- 1
Send the menu
A photograph, a PDF, a scan, or a link to the venue's existing menu page.
- 2
Read the layout
Sections, dish names, descriptions and prices are separated out, including multi-column and multi-price layouts.
- 3
Enrich
Allergens and dietary tags are derived from the description, with anything uncertain flagged for a human.
- 4
Deliver
Structured records in the shape your platform ingests — or a spreadsheet, if a person is doing the upload.
What comes out
| Field | Example | Confidence |
|---|---|---|
| Dish name | Tagliatelle al ragù | 0.97 |
| Section | Primi | 0.95 |
| Price and variants | €14.00 / €9.50 small | 0.96 |
| Description | Slow-cooked beef ragù, fresh egg pasta | 0.94 |
| Allergens | Gluten, egg, milk | 0.86 |
| Dietary tags | Contains meat; not vegetarian | 0.91 |
We have built this
We built a menu digitiser that converts restaurant menus — printed, handwritten or PDF — into structured data in about thirty seconds, extracting dishes, prices and allergens ready for delivery platforms. The case study covers the layouts that broke it, why allergen inference is held to a different standard than price extraction, and how the confidence threshold was set so that an uncertain allergen never ships silently.
Read the full case study →Retyping vs generic OCR vs purpose-built
| Retyping by hand | Generic OCR | Purpose-built | |
|---|---|---|---|
| Time per menu | 45-90 minutes | Minutes, then manual repair | About 30 seconds |
| Multi-column layouts | Fine | Scrambles the columns | Handled |
| Allergens | If the typist knows | No | Derived and flagged |
| Handwritten specials | Fine | Rarely | Yes, with lower confidence |
| Output shape | Whatever was typed | Loose text | The schema your platform ingests |
Delivers into: Deliveroo · Uber Eats · Just Eat · Lightspeed · Square · CSV / REST API
Frequently asked questions
Can it really read a handwritten specials board?
Often, yes — we built the handwriting side for forms and it carries over. But the confidence is lower than on printed text and it should be. A specials board photographed at an angle in bad light is the hardest input in this whole category, and the right behaviour is to return what it is sure of and flag the rest, not to invent a dish name.
How reliable are the allergens?
Reliable enough to be a first pass, not reliable enough to be the final word, and we will not pretend otherwise. Deriving allergens from a dish description is inference: "pesto" usually means pine nuts and parmesan, but not in every kitchen. The system flags what it infers as inferred, separately from what the menu states outright, so a human confirms before anything reaches a customer with an allergy.
What about menus in more than one language?
Common, and handled — a bilingual menu comes back with both, linked to the same dish rather than as two unrelated rows. Where a dish name is a proper noun that should not be translated, it is left alone.
Can it match dishes to an existing catalogue?
Yes, and for platforms this is usually the real requirement. Reading the menu is the easy half; deciding that this venue's "Margherita" is the same product as the one already in your catalogue is the half that takes judgement. We do that matching with a confidence score and leave the uncertain ones for review.
How does it handle prices that changed?
It reads what is on the menu, which is the honest answer. If the printed card is out of date, the data will be too. Where you need current prices, the sensible pattern is to digitise once and then take updates from the POS rather than re-photographing the card.
What does a project look like?
It starts with a free assessment: send us a handful of menus — including the messy ones, the handwritten board and the bilingual card — and we will run them and show you exactly what came out. Within 24 hours, from the engineer who would build it. If your menus turn out to be easy, we will tell you that too, and the project will be smaller than you expected.
What retyping menus is costing you
See what manual data entry is costing you
Rough estimate at ~90% automation over 220 working days a year. Your exact numbers come from the free assessment.
Get a Free Assessment
Send us a few of your documents and we'll tell you exactly what can be read from them, how accurately, and how much time it would save. No commitment.
See what manual data entry is costing you
Rough estimate at ~90% automation over 220 working days a year. Your exact numbers come from the free assessment.
Prefer to talk live? Book a call directly.
No preparation needed · Get actionable insights · Zero obligation
