Web Analytics
RestaurantsDietsGuidesAllergensBest OfCalculators

Nom JSON API

Nom's full catalog — roughly 2,400 fast food items across 31 chains, each with complete nutrition and its A–F Nom Score — is available as a free, read-only JSON API. No key, no signup, CORS-enabled.

Base URL  https://nom.now/api/v1
GET only · JSON responses · CORS *. Every response carries source, data_date, and canonical nom.now URLs so you can cite it.

Endpoints

GET/api/v1Index — lists every endpoint.
GET/api/v1/restaurantsAll 31 chains, with item counts.
GET/api/v1/restaurant/{slug}One chain's full menu.
GET/api/v1/item/{id}Full nutrition + Nom Score for one item.
GET/api/v1/score/{id}Just the Nom Score breakdown.
GET/api/v1/search?q={query}Search items by name or category.
GET/api/v1/healthiest?restaurant={slug}&diet={diet}Top items by Nom Score.
GET/api/v1/compare?ids={id1,id2,…}Up to 10 items, side by side.

Optional query params: limit (search, healthiest, compare) and restaurant (scopes search/healthiest to one chain by slug). diet accepts vegan, vegetarian, or gluten-free.

Example

curl https://nom.now/api/v1/item/mc-big-mac
{
  "id": "mc-big-mac",
  "name": "Big Mac",
  "category": "Burgers",
  "restaurant": { "id": "mcdonalds", "name": "McDonald's" },
  "nutrition": {
    "calories": 580, "total_fat": 34, "saturated_fat": 11,
    "sodium": 1060, "total_carbs": 45, "dietary_fiber": 3,
    "sugars": 7, "protein": 25
  },
  "nom_score": {
    "overall": 63, "grade": "C", "summary": "Watch the sodium.",
    "components": [
      { "component": "sodium",  "per_100_cal": 182.8, "unit": "mg", "rating": "poor" },
      { "component": "protein", "per_100_cal": 4.3,   "unit": "g",  "rating": "good" }
    ]
  },
  "dietary": { "vegetarian": false, "vegan": false, "gluten_free": false },
  "url": "https://nom.now/mcdonalds/mc-big-mac",
  "source": "Nom — fast food nutrition + A–F health scores (nom.now)",
  "data_date": "2026-06-29"
}

Rate limits & fair use

The API is free for personal projects, research, and light app use, but it is heavily rate-limited: 20 requests per minute, per IP. Go over and you'll get an HTTP 429 with a Retry-After header — wait about 60 seconds and retry. Please cache responses where you can, keep the attribution that ships in every payload, and don't re-publish the full dataset wholesale (see our Terms).

Need more than that? If you're building an app, pulling bulk data, or using Nom commercially, the public limit won't cut it — email contact@reindexventures.com and we'll set you up with higher-volume or commercial access.

Wiring this into an AI assistant? The Nom MCP server exposes this same data as ready-to-call tools for Claude, Cursor, and other MCP clients — no glue code.