v2.1 · 3.7M+ foods indexed, growing daily

The food database
that actually feels instant.

DietlyAPI gives your app 3.7 million+ foods with verified macros, micronutrients, and barcode lookups — auto-sorted by confidence, returned in under 40ms, anywhere in the world.

Start free — 1,000 calls/mo View docs
0
Foods indexed
0
Median response
0
Uptime (90 day)
0
Nutrients per item
Built for production

Three things every nutrition app needs.

Scale, speed, and ranked relevance. We do them so you don't have to scrape USDA, normalize Open Food Facts, or build your own search index.

3.7M+ foods, one endpoint

The full Open Food Facts global catalog, USDA FoodData Central, plus AI gap-fill for everything else. Branded, generic, restaurant — it's all in there.

Sub-40ms responses

Barcode lookups in ~1ms. Fuzzy search backed by GIN trigram indexes. Globally edge-cached so users in Tokyo feel it just as fast as users in Toronto.

Auto-sorted by confidence

USDA lab-verified items rank above community data, which rank above AI estimates. Your users see the most trustworthy match first — every time.

Barcode in < 1ms

EAN-13 and UPC-A lookups hit a B-tree index. Scan, get back a fully populated nutrition object instantly — no second hop, no fallback API.

Edge in 8 regions

Hosted in US-East, US-West, EU-West, EU-North, SA-East, AP-South, AP-Northeast, and AU-East. Your users always hit the nearest node.

SOC 2 & GDPR-ready

Encrypted at rest, encrypted in transit, no PII required to use the API. Bring your own key (BYOK) and regional pinning on Enterprise.

Speed you can feel

Median 38 ms. P99 under 90 ms.

We benchmark every region every 60 seconds. These are real numbers from real production traffic — not a cold-cached marketing demo.

  • 1 ms barcode lookups backed by a B-tree on every EAN.
  • Trigram fuzzy search tolerant of typos, plurals, and locale spellings.
  • Edge caching on Cloudflare for hot queries — return in <10ms warm.
  • Public status page with per-region latency you can verify any time.
LIVE · last 60s p50 latency
us-east-1
22 ms
eu-west-2
38 ms
ap-south-1
41 ms
ap-northeast-1
33 ms
sa-east-1
47 ms
// rolling avg across 1.2M requests · last refresh 8s ago
Ranked results

Auto-sorted so users see the right thing first.

Every result ships with a confidence score — verified lab data outranks community data, which outranks AI estimates. The frustrating "which one of these is right?" problem just goes away.

Greek Yogurt, Plain, Non-Fat
59 kcal · 10 g protein · 3.5 g carbs · per 100 g
USDA 1.00 · verified
Chobani · Greek Yogurt Plain 0%
59 kcal · 10 g protein · 3.5 g carbs · per 100 g
OFF 0.92 · community
FAGE Total 5% Greek Yogurt
96 kcal · 9 g protein · 4 g carbs · per 100 g
OFF 0.90 · community
Greek Yogurt, Strawberry (generic)
97 kcal · 8 g protein · 12 g carbs · per 100 g
USDA 0.85 · survey
Homemade Greek-style yogurt
71 kcal · 9 g protein · 4 g carbs · per 100 g
AI 0.75 · estimated
Two lines of code

Ship nutrition search this afternoon.

No SDK install. No webhooks to configure. Just an API key and a fetch call — the same shape works in Python, JS, Swift, Go, anywhere that speaks HTTP.

Grab a key Read the docs
quickstart.js
// One call. Auto-sorted results. Under 40ms.
const r = await fetch(
  'https://api.dietly.app/v1/search?q=greek+yogurt',
  { headers: { Authorization: 'Bearer dly_live_…' } }
);

const { results } = await r.json();

// → Ranked by confidence, highest first
results[0];
// {
//   name: "Greek Yogurt, Plain, Non-Fat",
//   calories_kcal: 59,
//   protein_g: 10,
//   source: "usda",
//   confidence: 1.0
// }
Simple pricing

Pay for traffic, not seats.

Every plan unlocks the full 3.7M food database. Upgrade only when you need more calls, faster SLAs, or commercial redistribution rights.

Starter
For side-projects & prototypes.
$0/month
Forever free. No card required.
  • 1,000 API calls / month
  • Full 3.7M food database
  • Search, barcode, food/:id
  • Community Discord support
  • Non-commercial use
Start free
Enterprise
For high-volume & regulated apps.
Custom
Volume pricing — from $0.0002/call
  • Unlimited API calls
  • 99.99% uptime SLA + credits
  • Dedicated region & pinning
  • SOC 2 II + DPA + BAA
  • Bulk data export (.parquet)
  • Solutions engineer + Slack
Talk to sales
Loved by builders

Teams ship faster on DietlyAPI.

"We swapped our scraped Open Food Facts CSV for DietlyAPI in an afternoon. Search latency dropped from 600ms to 30ms and our 1-star reviews about 'wrong macros' literally stopped overnight."

MK
Maya K.
Founder · Macro Coach iOS

"The confidence ranking is the killer feature. USDA verified items naturally float to the top so our nutritionists trust the autocomplete instead of fighting it."

DR
Dr. Daniel R.
Clinical Lead · NutriSense Clinics

"Barcode scan to nutrition card in 80ms end-to-end, including the network round-trip. Our users genuinely think the app is offline-first. It isn't."

JT
Jonas T.
CTO · Plateful (Berlin)
Questions, answered

Everything else you might be wondering.

Where does the data come from?
DietlyAPI is built on top of USDA FoodData Central (lab-verified, public domain) and Open Food Facts (community-contributed, ODbL). Anything missing is gap-filled by Claude with a clearly labeled 0.75 confidence score, and those generated entries are cached and gradually replaced as real data appears.
How is auto-sorting different from regular search ranking?
Most food APIs rank by string similarity alone — so "Yogurt 0% from a forgotten 2014 brand" can beat "USDA verified plain Greek yogurt" just because the name matched better. We rank by (relevance × confidence), which means trustworthy lab data always beats noisy long-tail entries when the query is ambiguous.
How fast is "fast", really?
Globally, our p50 is 38ms, p95 is 72ms, p99 is 88ms — measured over the last 30 days of production traffic. Barcode lookups specifically hit a B-tree index and return in ~1ms server-side. The full breakdown is on our public status page.
Can I use this in a commercial app?
Yes — Pro and Enterprise plans include full commercial use rights, including redistribution within your app. The free Starter plan is for non-commercial / prototyping use. Open Food Facts attribution is required on Pro; we handle USDA attribution automatically.
What happens if I blow past my plan's call limit?
We never hard-cut you off mid-month. Calls beyond your included quota are billed at the overage rate ($0.0004/call on Pro), and we email you the moment you cross 80% so you can upgrade or throttle gracefully.
Can I self-host instead?
Absolutely. The underlying schema and ETL scripts are open-source on GitHub. The hosted DietlyAPI exists for teams who want the speed, SLA, and gap-fill without running their own Postgres + 3M-row import. Many customers prototype on self-host, then switch.

Make your nutrition app feel instant.

1,000 free calls per month, no credit card. You can have search live in your app before your coffee gets cold.