Skip to content

The data layer for every food app.

Accurate, normalized data on foods, brands and nutrients, from one fast API. No scraping, no stale CSVs.

Ask for anything people actually eat

An apple with no label on it. A supermarket yogurt. A barcode off the packet. A burger from a menu. Same catalog, same endpoint, same response shape.

apple
Apple, fresh, with skin
Fruits
95kcal
Protein0.5 g
Carbs25.1 g
Fat0.3 g
Apple pie, 9-inch
Sweets
418kcal
Protein3.8 g
Carbs54.9 g
Fat20.8 g
Apple juice
Non-Alcoholic Beverages
114kcal
Protein0.2 g
Carbs28.0 g
Fat0.3 g
GET/v1/foods?q=apple&include=serving_sizes

That search, in one request

No SDK to install. One call brings back the food, its brand, its group, its photo and every nutrient on the row. Press Run to see it.

GET
curl -G https://api.noms.sh/v1/foods \
  --data-urlencode "q=chocolate cheerios" \
  --data-urlencode "include=brand,food_group,nutrients,serving_sizes,images" \
  --data-urlencode "page_size=1" \
  -H "Authorization: Bearer $NOMS_KEY"
Press Run to send the request

What's actually in the catalog

Every number here is queried from the catalog, not estimated.

3.7M
Foods
generic, branded and menu items
36M
Nutrient values
across every tracked nutrient
298K
Brands
deduplicated across sources
230
Market countries
one catalog, one id space
Barcodes3.4MNutrients tracked177Food groups23With images566KGeneric foods42K

Boring on purpose

Names normalized, units reconciled, duplicates merged. That work is done before the response reaches you.

Fast integration

One key, one URL. You can ship your first query today.

Clean data

Names normalized, units reconciled, duplicates merged before you see them.

Global coverage

Multiple markets and languages behind one catalog and one id space.

Built for AI

Flat, predictable JSON that drops straight into a tool call or an embedding.

Three endpoints cover most apps

The rest is there when you need it: filters, sorting, includes and per-nutrient queries.

GET/v1/foods?q=Search the catalog. Typo-tolerant, ranked, cursor-paginated.
GET/v1/foods/{id}One food, with nutrients and serving sizes via include=.
GET/v1/foods?barcode=Resolve a scanned EAN / UPC straight to a catalog row.

Simple, transparent pricing

Start free. Founding-member pricing is locked in for early customers.

Taster

Check the coverage. Free.

$0
  • 250 requests / day
  • 1 market of your choice
  • Search + id lookup
  • No credit card

Sous Chef

For your first real users.

$4929/mo
  • 250,000 requests / mo
  • All markets
  • Cache up to 30 days
  • Relaxed rate limits

Head Chef

For apps at scale.

$14999/mo
  • 2,000,000 requests / mo
  • Store data indefinitely
  • Unmetered rate limits
  • 99.9% uptime SLA

Executive Chef

Custom volume and licensing.

Contact us
  • Negotiated volume
  • Redistribution / bulk license
  • Custom rate limits
  • Contractual SLA
PlanTasterSous ChefHead ChefExecutive Chef
Price$0$49$29/mo$149$99/moContact us
Requests250 / day250,000 / mo2,000,000 / moNegotiated
Markets1 (your choice)AllAllAll
Bulk enumerationFullFullFull
Caching / redistributionNoneCache up to 30 daysStore indefinitelyRedistribution / bulk license
Rate limitThrottledRelaxedUnmeteredCustom
SLANoneNone99.9%Contractual