← Back to blog How it works

How barcode scanning actually resolves a supplement

August 2026 ยท 4 min read

Most supplement trackers either don't scan at all, or scan against a database that's really built for packaged food. Supplement labels don't fit that shape well: a bottle's UPC has to resolve to a brand, a product, and a full ingredient panel with doses, not a calorie count. Here's what actually happens between the beep and the product card.

Two hops, not one

A single database rarely covers both halves of the problem: knowing which product a barcode belongs to, and knowing what's actually in it. So the lookup happens in two steps.

Hop 1: brand and product name. The scanned barcode is checked against a general product database to resolve which brand and product it belongs to. This step is good at "what is this," not at nutrition data. Food-first databases produce unreliable ingredient numbers for supplements, so this hop is used only for identification, never trusted for dosing.
Hop 2: real ingredient data. The resolved brand and product name are then used to look up the actual ingredient panel (name, amount, and unit for each ingredient) from a supplement-specific reference source. This is the data that actually populates your stack.

Splitting it this way means each hop only has to be good at the thing it's actually good at, instead of asking one database to do both jobs adequately.

What happens when it doesn't match

No barcode database is complete, especially for smaller or newer brands. When a scan doesn't resolve, the app doesn't guess, it drops you straight into manual entry with whatever partial information it did find (usually at least a brand or product name) pre-filled. Manual entry isn't a fallback bolted on as an afterthought; it's built to be just as fast as scanning for the products that aren't in either database yet.

Why this matters for accuracy

The alternative, a single-pass fuzzy text search, tends to return plausible-looking but wrong matches, especially for barcodes that are really just a string of digits with no inherent meaning to search on. A two-hop, identify-then-enrich approach means a wrong match at hop one just produces "not found," not a confidently wrong ingredient panel.

This describes Thryever's scanning architecture in general terms. It's not a claim about any specific third-party database's completeness or accuracy.