AI Restaurant Menu Parser — Dishes, Prices & Allergens
Pricing
from $2.00 / 1,000 dish extracteds
AI Restaurant Menu Parser — Dishes, Prices & Allergens
Parse restaurant menu photos into structured data: every dish with translated name, price, atomic ingredients, EU-14 allergens with confidence, dietary type (vegan/vegetarian/pescetarian), nutrition estimates and origin story — 15 output languages. BYO Gemini key; no browser, no proxies.
Pricing
from $2.00 / 1,000 dish extracteds
Rating
0.0
(0)
Developer
Nomad Dev
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
AI Restaurant Menu Parser — Photos → Dishes, Prices & Allergens
Upload menu photos (or send URLs/base64 through JSON), get back the menu as structured JSON — one record per dish. Richer than generic menu-OCR actors:
name(translated to your language) +originalName(as printed)category,price(with currency, as shown)ingredients— atomic base ingredients (composite preparations like pesto or hummus are decomposed), each with an English database name, translated display name, and EU-14 allergens with confidence levelsdietaryType— Vegan / Vegetarian / Pescetarian / Other, with explanationnutritionInfo— estimated serving size, calories, protein, fat, carbsstory— origin story / cultural significanceisAlcoholicfor beverages
15 output languages. The prompt is the production pipeline of a dietary-restrictions travel app — battle-tested on real menus worldwide.
Bring your own Gemini key
Parsing runs on your Google AI Studio key (get one free) — you control the AI cost and quota. A typical menu runs a few cents on Gemini 2.5 Flash, or a fraction of that on Flash-Lite.
Apify charges $0.005 after a non-empty dataset is pushed, plus $0.002 per
dish. Your first live run waives up to 10 per-dish charges; the $0.005 start
charge still applies. Empty and failed parses produce a diagnostic: true
row with a message and create no Apify billing events, although Gemini may
still charge your account for an attempted inference.
Input example
{"imageUrls": ["https://example.com/menu-page-1.jpg", "https://example.com/menu-page-2.jpg"],"geminiApiKey": "AIza…","language": "en"}
Notes
- The untouched keyless Console run returns one deterministic row labelled
recordType: "DEMO"/isDemo: true. It makes no image or Gemini call and is not billed. Customize the input and add your Gemini key to use the normal live path. - The Console accepts local JPEG, PNG, or WebP uploads directly. API callers
may use HTTP(S) URLs, base64 data URIs, or raw base64 in
imageUrls. - Each decoded image is limited to 10 MiB. Inline payloads and signed URL credentials are replaced with safe references in output records and logs.
- First live run allowance: up to 10 per-dish charges are waived; the actor-start charge still applies. The untouched prefilled DEMO is separate and completely free.
- Up to 20 images per run, parsed together as one menu.
- Unreadable items are skipped rather than guessed; empty results produce a non-billed diagnostic row explaining why.
- Don't have menu photos yet? The companion Google Maps Menu Scraper actor finds them from a Google Maps place URL and parses them in one run.
Safety
Allergen, dietary, ingredient and nutrition fields are AI-generated estimates. They can be wrong and do not account reliably for substitutions or kitchen cross-contact. Verify critical information with the restaurant; do not rely on this output as medical advice or as the sole safeguard for a severe allergy.
Support & links
- Questions, bug reports and FAQ: github.com/Exdenta/traveleat-support
- This actor runs the same menu pipeline as Travel Eat — scan a menu, get allergens, ingredients and dietary filters in 36 languages.