FAQ & Services
Common questions, the services and tools that power Beer Check, and known limitations.
Tools
Check a BeerFrequently asked questions
Data services
Beer Check integrates several external APIs to provide dietary and allergen data.
Primary source for vegan and vegetarian status. Community-maintained database of alcoholic beverages.
Open-source product database. Provides allergen tags, dietary labels (vegan, gluten-free), and barcode-to-product resolution.
Optional fallback for barcode-to-product name resolution when Open Food Facts has no entry. Disabled by default.
Brewdog beer catalogue. Used to verify the matched beer name against a canonical name via Jaro-Winkler similarity. Disabled by default.
Open-source brewery catalogue used to pre-populate the backend brewery database.
Additional brewery data used to supplement the OpenBreweryDB catalog.
Tools & libraries
The backend is a Spring Boot service running on Java. These are the key libraries and services it uses.
Tesseract OCR (Tess4j)
Open-source OCR engine used as the primary text extractor for beer label images. Runs locally on the server.
OCR.space
Cloud OCR API used as a fallback when Tesseract's confidence score is below the threshold (default 0.85).
Google Cloud Vision
AI-powered OCR service for high-accuracy label text extraction. Activated when configured via the ocr.provider setting.
ZXing ("Zebra Crossing")
Open-source barcode decoding library. Decodes EAN-13, EAN-8, UPC-A, UPC-E, CODE-128, and QR Code formats from uploaded images.
Spring Boot 3 / Java 21
Backend framework. Handles HTTP routing, multipart uploads, validation, and database access via JDBC.
PostgreSQL + Flyway
Relational database storing the beer and brewery catalog, cached dietary results, and image-hash caches for fast repeat lookups.
Apache Commons Text
Provides fuzzy string matching (Jaro-Winkler similarity) used to match OCR-extracted text against the beer catalog.
Known limitations
Free-tier cold starts — the backend hibernates after 15 minutes of inactivity. The first request after a pause typically takes 20–30 seconds.
OCR accuracy depends heavily on photo quality. Blurry, dark, angled, or partially obscured label photos produce unreliable results.
Database coverage is incomplete. Many craft, regional, and international beers are not in Barnivore or Open Food Facts.
Allergen data may be absent. Not all database entries include complete allergen information — an empty allergens list is not a guarantee of allergen-free.
Ingredients change. Brewery recipes and formulations change over time; database entries may not reflect the current recipe. Always verify with the manufacturer for allergy concerns.
Cask ales are often fined with isinglass (fish-derived) and are frequently not suitable for vegetarians or vegans — even if the database entry says otherwise. The keg or bottled version of the same beer may have been evaluated. See our cask ales guide →
Barcode coverage is limited to Open Food Facts and optionally UpcItemDb. Niche or regional products without a database entry will not be found.
Non-Latin scripts are not well supported by the OCR pipeline. Labels in Cyrillic, Arabic, CJK, or other scripts will likely fail to extract meaningful text.