{
  "data": {
    "a": {
      "slug": "nutritionix",
      "name": "Nutritionix API",
      "vendor": "Syndigo LLC",
      "vendorUrl": "https://developer.nutritionix.com/",
      "kind": "http-api",
      "category": "cooking",
      "summary": "The Nutritionix API, run by Syndigo, turns free-text food and exercise descriptions into nutrition data and searches a database of grocery products, restaurant menu items and generic foods by name or UPC. Access is arranged through Syndigo's sales team.",
      "url": "https://www.anchorterminal.com/tools/nutritionix",
      "markdownUrl": "https://www.anchorterminal.com/tools/nutritionix.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/nutritionix.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/nutritionix.json",
      "dns": "nutritionix.grade.anchorterminal.com",
      "transports": [],
      "packages": [],
      "auth": "api-key",
      "authNotes": "An application id and key pair sent as the `x-app-id` and `x-app-key` headers on every request, with an optional `x-remote-user-id` header that counts an app's active users for billing (0 in development). Keys come from a developer.nutritionix.com account; since the free tier ended, a limited trial is granted through the sales form on www.nutritionix.com. No scopes, expiry or rotation documented.",
      "pricing": "paid",
      "pricingNotes": "No public price. developer.nutritionix.com says the open, no-cost trial that ran for over a decade has ended because of misuse, and that businesses request a limited trial through the contact form at www.nutritionix.com/business/api, after which sales follows up. The pricing page on www.nutritionix.com is closed to our reader by robots.txt. Premium parameters (claims, taxonomy, UK branded data, detailed nutrients) are sold separately through an account executive.",
      "priceSummary": "Paid",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the developer portal or the Syndigo docs (checked 2026-11-03). Access is contracted through sales.",
        "endpoints": []
      },
      "toolCount": 0,
      "popularity": {
        "githubStars": 192,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://docx.syndigo.com/developers/docs/nutritionix-api-guide",
      "llmsTxt": "https://docx.syndigo.com/llms.txt",
      "capabilities": [
        "cooking.nutrition",
        "cooking.grocery"
      ],
      "tags": [
        "hosted",
        "paid",
        "sales-led",
        "api-key",
        "llms-txt",
        "enterprise",
        "closed-source"
      ],
      "lastRelease": "2024-03-14",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 33.6,
        "grade": "F",
        "agentReady": false,
        "rank": 1257,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 8,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 51,
          "maintenance": 10,
          "payments": 0,
          "reliability": 15,
          "schema": 45,
          "security": 52,
          "transparency": 57
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "low",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "Free-text food logging and a branded-food and restaurant database behind four header-authenticated endpoints, documented in Markdown with an llms.txt index and backed by Syndigo's sub-processor list and disclosure programme. There is no public price or free tier since the open trial ended, no documented rate limit or 429, and the status, terms and pricing pages are closed to our reader.",
        "bestFor": "Agents that log meals from free text for a US or UK audience and need branded grocery and restaurant nutrition with UPCs, under a sales contract.",
        "strengths": [
          "POST /v2/natural/nutrients parses phrases such as '1 cup rice' into serving weights, 11 summary nutrients and a full nutrient array in one call",
          "Branded foods, restaurant menu items and UPC lookup, with brand, region and claim filters on the instant endpoint",
          "Keys travel only in headers, with a per-user header that keeps billing off the key itself",
          "Markdown docs with an llms.txt index on Syndigo's portal, with examples per endpoint",
          "Syndigo names the Nutritionix API's sub-processors with locations and runs a responsible disclosure programme on Bugcrowd"
        ],
        "weaknesses": [
          "No public free tier or published price; a limited trial is granted by sales after a form on www.nutritionix.com",
          "No rate limit figure, 429 or Retry-After documented; exceeded usage is reported as 401",
          "The status page, API terms and pricing page sit on hosts whose robots.txt disallows our reader, so none was read",
          "The API guide's last update is 14 March 2024, with no changelog and no official SDK in current maintenance",
          "Caching is limited to a user's own food log; other caching needs a paid add-on"
        ],
        "agentNotes": [
          "Do not plan on self-serve access; a person must request a trial through Syndigo's sales form, so ask for an existing app id and key before starting",
          "Send `x-app-id` and `x-app-key` as headers and set `x-remote-user-id` per end user (0 in development), since billing counts active users",
          "Treat a 401 as either a bad key or an exhausted usage limit; the docs give no limit figure, so back off before retrying",
          "Debounce instant searches by 300 ms and send at least 3 characters, then pass `food_name` to natural/nutrients for common foods and `nix_item_id` to search/item for branded ones",
          "Cache only a person's own logged results; cached data may not be shown to another user"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "low",
            "grade": "F",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 33.6
          }
        ],
        "editorialScores": {
          "ergonomics": 51,
          "maintenance": 10,
          "payments": 0,
          "reliability": 15,
          "schema": 45,
          "security": 52,
          "transparency": 36
        },
        "provenanceScore": 78,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "http": "curl -X POST https://trackapi.nutritionix.com/v2/natural/nutrients -H \"Content-Type: application/json\" -H \"x-app-id: $NUTRITIONIX_APP_ID\" -H \"x-app-key: $NUTRITIONIX_APP_KEY\" -d '{\"query\":\"1 cup rice and 2 eggs\"}'"
      },
      "letme": {
        "capability": "https://letme.dev/cooking.nutrition",
        "tool": "https://letme.dev/nutritionix"
      },
      "area": "everyday",
      "provenance": {
        "legalEntity": "Syndigo LLC",
        "domain": "nutritionix.com",
        "domainRegistered": "2010-01-25",
        "endpointOnVendorDomain": true,
        "terms": "https://syndigo.com/legal/terms-of-use/",
        "privacy": "https://syndigo.com/legal/privacy-notice/",
        "statusPage": "https://status.nutritionix.com/",
        "changelog": "",
        "securityTxt": "none",
        "checked": "2026-11-03",
        "notes": [
          "Syndigo LLC is the entity on syndigo.com's legal pages and the sub-processor list, which has a Nutritionix API section. The API's own terms are shown during signup on developer.nutritionix.com and on www.nutritionix.com, which was not read; the Syndigo terms of use linked here (last updated 22 January 2019) govern Syndigo's website and do not mention the API.",
          "www.nutritionix.com/robots.txt, trackapi.nutritionix.com/robots.txt and status.nutritionix.com/robots.txt all disallow the whole site for ClaudeBot, anthropic-ai and Claude-Web among about 30 named crawlers, and carry a Content-Signal line of search=yes,ai-train=no,use=reference for everyone else. Nothing on those hosts was read, so the pricing page, the API terms and the status page are unchecked. developer.nutritionix.com/robots.txt has only comments and docx.syndigo.com allows all; syndigo.com disallows demo and private paths only.",
          "Syndigo's privacy notice is effective 25 March 2026 and does not name Nutritionix. Syndigo's responsible disclosure notice takes reports through Bugcrowd without compensation. No security.txt on developer.nutritionix.com (404).",
          "RDAP gives nutritionix.com a registration date of 25 January 2010."
        ],
        "score": 78
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/nutritionix.json",
      "live": {
        "slug": "nutritionix",
        "vendorStatus": {
          "page": "https://status.nutritionix.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-04T21:26:18.076993209Z"
        },
        "securityTxt": {
          "url": "https://nutritionix.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:53:57.34546431Z"
        },
        "updatedAt": "2026-11-04T21:26:18.076993209Z"
      }
    },
    "answer": "spoonacular scores 49 (D) on agent readiness against Nutritionix API's 33.6 (F), and leads in 6 of 7 scored categories. Nutritionix API leads on security \u0026 auth.",
    "b": {
      "slug": "spoonacular",
      "name": "spoonacular",
      "vendor": "skycraft GmbH",
      "vendorUrl": "https://spoonacular.com/food-api",
      "kind": "http-api",
      "category": "cooking",
      "summary": "spoonacular is a recipe and food REST API from skycraft GmbH in Dresden. It searches recipes by ingredients, diet and nutrients, analyses recipes and grocery products, builds meal plans and shopping lists, and has a small open-source MCP server.",
      "url": "https://www.anchorterminal.com/tools/spoonacular",
      "markdownUrl": "https://www.anchorterminal.com/tools/spoonacular.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/spoonacular.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/spoonacular.json",
      "dns": "spoonacular.grade.anchorterminal.com",
      "repo": "https://github.com/ddsky/spoonacular-mcp",
      "transports": [
        "stdio"
      ],
      "packages": [
        {
          "registry": "npm",
          "name": "spoonacular-mcp"
        }
      ],
      "auth": "api-key",
      "authNotes": "One API key per account, minted in the console after a browser signup. The docs send it as the `apiKey` query parameter on every request, or as an `x-api-key` header since December 2022. No scopes, expiry or rotation procedure found. Writes to a user's meal plan need a per-user `username` and `hash` pair from the connect-user endpoint.",
      "pricing": "freemium",
      "pricingNotes": "Free plan of 50 points a day with no card, then HTTP 402 until the quota resets at midnight UTC. Cook $29 a month for 1,500 points a day (overage $0.005 a point), Culinarian $79 for 4,500 ($0.004), Chef $149 for 10,000 ($0.002), Enterprise from $300. A request costs 1 point plus 0.01 a result, with exceptions listed per endpoint. Academic and hackathon plan $10 a month through RapidAPI.",
      "priceSummary": "$29 / mo",
      "where": "local",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the docs, pricing page, OpenAPI spec or MCP source (checked 2026-11-03). An exhausted daily quota answers HTTP 402 with no payment requirements; subscriptions are bought in the console through Stripe.",
        "endpoints": []
      },
      "toolCount": 6,
      "popularity": {
        "githubStars": 6,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-11-03"
      },
      "docsUrl": "https://spoonacular.com/food-api/docs",
      "openapi": "https://raw.githubusercontent.com/ddsky/spoonacular-api-clients/refs/heads/master/spoonacular-openapi-3.json",
      "capabilities": [
        "cooking.recipes",
        "cooking.nutrition",
        "cooking.meal-plans",
        "cooking.pantry",
        "cooking.grocery",
        "cooking.food-recognition"
      ],
      "tags": [
        "hosted",
        "freemium",
        "free-tier",
        "no-card",
        "api-key",
        "openapi",
        "mcp",
        "typescript",
        "python",
        "java",
        "go",
        "eu",
        "closed-source"
      ],
      "lastRelease": "2026-02-01",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 49,
        "grade": "D",
        "agentReady": false,
        "rank": 1010,
        "ranked": true,
        "rankOf": 1349,
        "categoryRank": 2,
        "methodology": "0.7",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 68,
          "maintenance": 22,
          "payments": 40,
          "reliability": 58,
          "schema": 65,
          "security": 20,
          "transparency": 61
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-11-03"
        },
        "negative": 0,
        "verdict": "A broad recipe, ingredient, product and meal-plan API with a public OpenAPI document, 24 generated SDKs and a free 50-point day with no card. One key per account travels in the query string by default, the status page showed no data to our reader, and the terms allow caching for an hour at most.",
        "bestFor": "Agents that need recipe search with diet and nutrient filters, ingredient substitutions and nutrition, and meal plans or shopping lists written to a connected user.",
        "strengths": [
          "Public OpenAPI 3.0 document with 97 paths, and generated SDKs in 24 languages under MIT",
          "Free plan of 50 points a day with no card, with public plan prices and per-point overage rates",
          "Quota and rate limits published with numbers, reported in three response headers on every call",
          "Meal plans, shopping lists and custom foods can be written back through the API for a connected user",
          "Open-source six-tool MCP server on npm, each tool with a typed JSON Schema and few required fields"
        ],
        "weaknesses": [
          "One all-powerful key per account, documented in the `apiKey` query parameter and sent that way by the MCP server",
          "status.spoonacular.com answered with a data error and no history on 3 November 2026, and no incident record could be read",
          "No security.txt, disclosure policy or certification found, and the privacy policy's last revision is dated 2023",
          "The newest dated change is February 2026, and the MCP server has had one release, in August 2025",
          "Terms allow caching user-requested data for one hour only, with written permission, and forbid storing ingredients, instructions and nutrition"
        ],
        "agentNotes": [
          "Send the key as the `x-api-key` header rather than `apiKey=` in the URL, and keep `number` small, since every result adds 0.01 points to the call's cost",
          "Read `X-API-Quota-Left` on each response; a 402 means the day's points are gone until midnight UTC and a 429 means the plan's requests-per-second limit, with no Retry-After to wait on",
          "Use `/recipes/complexSearch` with `addRecipeInformation=true` for one call instead of a search followed by one information call per recipe",
          "Do not store ingredients, instructions or nutrition between sessions; the terms allow only recipe ids, titles and image urls to be kept",
          "Show the original recipe source and a link to it with every recipe, as the terms require"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "D",
            "methodology": "0.7",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 49
          }
        ],
        "editorialScores": {
          "ergonomics": 68,
          "maintenance": 22,
          "payments": 40,
          "reliability": 58,
          "schema": 65,
          "security": 20,
          "transparency": 38
        },
        "provenanceScore": 83,
        "checked": {
          "categories": {
            "ergonomics": "2026-11-03",
            "maintenance": "2026-11-03",
            "payments": "2026-11-03",
            "reliability": "2026-11-03",
            "schema": "2026-11-03",
            "security": "2026-11-03",
            "transparency": "2026-11-03"
          },
          "last": "2026-11-03",
          "oldest": "2026-11-03",
          "stale": false,
          "staleAfterDays": 90
        }
      },
      "connect": {
        "install": "npm install -g spoonacular-mcp",
        "http": "curl -H \"x-api-key: $SPOONACULAR_API_KEY\" \"https://api.spoonacular.com/recipes/complexSearch?query=pasta\u0026number=5\"",
        "config": {
          "mcpServers": {
            "spoonacular": {
              "command": "spoonacular-mcp",
              "env": {
                "SPOONACULAR_API_KEY": "your_api_key_here"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/cooking.recipes",
        "tool": "https://letme.dev/spoonacular"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "Cook plan",
          "unit": "month",
          "usd": 29,
          "note": "1,500 points a day, 5 requests a second"
        },
        {
          "item": "Culinarian plan",
          "unit": "month",
          "usd": 79,
          "note": "4,500 points a day, 10 requests a second"
        },
        {
          "item": "Chef plan",
          "unit": "month",
          "usd": 149,
          "note": "10,000 points a day, 20 requests a second"
        },
        {
          "item": "Overage point on Cook",
          "unit": "credit",
          "usd": 0.005,
          "note": "$0.004 on Culinarian, $0.002 on Chef; a request is usually 1 point plus 0.01 a result"
        },
        {
          "item": "Academic or hackathon plan",
          "unit": "month",
          "usd": 10,
          "note": "Through RapidAPI, up to 5,000 requests a day, manual approval"
        }
      ],
      "provenance": {
        "legalEntity": "skycraft GmbH",
        "domain": "spoonacular.com",
        "domainRegistered": "2012-12-26",
        "endpointOnVendorDomain": true,
        "terms": "https://spoonacular.com/food-api/terms",
        "privacy": "https://spoonacular.com/food-api/privacy",
        "statusPage": "https://status.spoonacular.com/",
        "changelog": "https://spoonacular.com/food-api/updates",
        "securityTxt": "none",
        "checked": "2026-11-03",
        "notes": [
          "skycraft GmbH is named only in the imprint at spoonacular.com/contact, with Dr. David Urbansky as CEO. The terms (last updated 16 April 2026) choose the law and courts of Dresden and name no entity. The privacy policy's last revision is written 10/9/2023.",
          "The terms forbid scraping the API and storing its data beyond recipe ids, titles and image urls. They do not address automated reading of the website. spoonacular.com/robots.txt disallows /l/ for all crawlers and disallows the whole site for a list of named download tools and crawlers (including GoogleBot and a client named WebFetch); ClaudeBot and anthropic-ai are not named. Only pages outside /l/ were read.",
          "status.spoonacular.com is an UptimeRobot page that answered 'There was an error while fetching the data' on 3 November 2026, with no components, history or uptime figures rendered.",
          "RDAP gives spoonacular.com a registration date of 26 December 2012.",
          "/.well-known/security.txt returns 404. No llms.txt (404)."
        ],
        "score": 83
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/spoonacular.json",
      "live": {
        "slug": "spoonacular",
        "vendorStatus": {
          "page": "https://status.spoonacular.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-11-04T21:26:47.824578884Z"
        },
        "versions": [
          {
            "registry": "npm",
            "name": "spoonacular-mcp",
            "version": "1.0.0",
            "seenAt": "2026-11-04T20:57:03.249297177Z"
          }
        ],
        "githubStars": 6,
        "npmWeekly": 16,
        "securityTxt": {
          "url": "https://spoonacular.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-11-04T15:53:00.134240883Z"
        },
        "updatedAt": "2026-11-04T21:26:47.824578884Z"
      }
    },
    "edges": [
      {
        "by": 43,
        "category": "reliability",
        "leads": "spoonacular",
        "name": "Reliability",
        "reasons": {
          "a": "Read with the hosted lines. The docs name a status page at status.nutritionix.com, but that host's robots.txt disallows our reader, so it is scored as unread (0 of 20) with no incident history (5). No rate limit figure appears anywhere in the docs (0 of 15). No 429, Retry-After or backoff guidance; the error page files 'usage limits exceeded' under 401 (0 of 15). No SLA found (0). The v2 API is generally available (10). 0 + 5 + 0 + 0 + 0 + 10 = 15.",
          "b": "Read with the hosted lines. A status page exists at status.spoonacular.com (UptimeRobot), but on 3 November 2026 it rendered 'There was an error while fetching the data' with no components or history, so half credit (10 of 20) and no readable incident record (5). Daily point quotas and requests-per-second limits are published by plan, 60 a minute on Free and 5, 10 and 20 a second on Cook, Culinarian and Chef (15). HTTP 429 and 402 are documented with three quota headers, but there is no Retry-After, backoff guidance or idempotency key for the meal-plan writes (8 of 15). The pricing page states 99 per cent uptime on Cook and Culinarian and 99.9 per cent on Chef, and the FAQ says SLAs are sold above $250 a month (10). The API is generally available (10). 10 + 5 + 15 + 8 + 10 + 10 = 58."
        },
        "scores": {
          "a": 15,
          "b": 58
        }
      },
      {
        "by": 40,
        "category": "payments",
        "leads": "spoonacular",
        "name": "Payments \u0026 pricing",
        "reasons": {
          "a": "No x402, MPP or L402 (0 of 40). No price is published on any page read; the pricing page on www.nutritionix.com is closed to our reader and the developer portal routes to sales (0 of 20, unchecked). The developer portal says the public free-access tier has ended and a limited trial is granted by sales (0 of 20). A person files a form and waits for a sales follow-up (0 of 20). Total 0.",
          "b": "No x402, MPP or L402 (0 of 40). Plan prices and per-point overage rates ($0.005, $0.004 and $0.002) are public, with the point cost of every endpoint (20). The Free plan gives 50 points a day with no card (20). A person signs up in the console in a browser, and no key API exists (0 of 20). 0 + 20 + 20 + 0 = 40."
        },
        "scores": {
          "a": 0,
          "b": 40
        }
      },
      {
        "by": 32,
        "category": "security",
        "leads": "nutritionix",
        "name": "Security \u0026 auth",
        "reasons": {
          "a": "An application id and key pair with no scopes, sent only as headers per the docs, which say not to use the query string; no expiry or rotation documented (18 of 30). The API is read-only, so nothing destructive is reachable, but there is no read-only or per-user credential (12 of 20). Food, brand and menu names come from brands and restaurants through Syndigo, with little free text and no guidance on treating it as untrusted (8 of 15). `x-remote-user-id` counts active users for billing; no request log or per-call visibility for the operator was found (2 of 15). Syndigo runs a responsible disclosure programme on Bugcrowd without compensation, holds SOC 2 Type II for named products that do not include Nutritionix, and lists the Nutritionix API's sub-processors; no security.txt (12 of 20). 18 + 12 + 8 + 2 + 12 = 52.",
          "b": "One key per account with no scopes, expiry or rotation procedure, documented first as the `apiKey` query parameter and also sent in the query string by the MCP server; the `x-api-key` header is the alternative. One all-powerful key (10) less 10 for the documented query string (0 of 30). The data endpoints are read-only and a user's meal plan is written only with that user's `username` and `hash`, but there is no read-only key mode or confirmation step (10 of 20). Recipe text, instructions and extracted pages come from third-party websites and no guidance on treating them as untrusted was found (5 of 15). The console shows quota use and the headers report it per call, but no request log was found (5 of 15). security.txt returns 404 and no disclosure policy, bug bounty or certification was found (0 of 20). 0 + 10 + 5 + 5 + 0 = 20."
        },
        "scores": {
          "a": 52,
          "b": 20
        }
      },
      {
        "by": 20,
        "category": "schema",
        "leads": "spoonacular",
        "name": "Schema \u0026 documentation",
        "reasons": {
          "a": "No OpenAPI or similar document was found (0 of 25). Syndigo's docs portal serves an llms.txt index and a Markdown twin of every Nutritionix page (10). Each endpoint page states its purpose with usage guidance, such as debouncing instant searches and using the right follow-up endpoint for common and branded foods (13 of 20). Parameters are typed with defaults, but the only required column reads 'Required for Authentication', taxonomy_node_id is typed boolean while described as an id, and claims values sit in prose (8 of 15). Request and response examples on each endpoint; six error statuses with one line each and no body format (9 of 15). v2 in the path, no changelog, and the API guide last updated on 14 March 2024 (5 of 15). 0 + 10 + 13 + 8 + 9 + 5 = 45.",
          "b": "Public OpenAPI 3.0.0 document (info version 2.0.2, 97 paths, 99 operations) in the vendor's spoonacular-api-clients repository, linked from the SDK page, and the MCP server's six tools carry JSON Schema inputs (25). No llms.txt (404) and no Markdown docs (0 of 10). Each endpoint states its purpose and point cost, with little on when not to use it (12 of 20). Parameters are typed with required flags, `number` is bounded, but diet, cuisine, intolerance and meal-type values sit in prose lists rather than enums (9 of 15). Request and response examples on every endpoint, 402 and 429 documented in the quota text, but the OpenAPI document lists only 200, 401, 403 and 404 and no error body shape (9 of 15). No version in the path; a dated updates page by month back to February 2020 records field removals with notice, the last in December 2022 for 30 June 2023 (10 of 15). 25 + 0 + 12 + 9 + 9 + 10 = 65."
        },
        "scores": {
          "a": 45,
          "b": 65
        }
      },
      {
        "by": 17,
        "category": "ergonomics",
        "leads": "spoonacular",
        "name": "Agent ergonomics",
        "reasons": {
          "a": "Instant returns at most 20 common and 20 branded items and premium `detailed_nutrients` picks up to three nutrients, but natural nutrients returns every food with a full nutrient array and there is no general field selection (12 of 25). No pagination; filters by branded, common, brand id, brand type and region (10 of 20). Six statuses with a line each, no codes in the body, and limit errors folded into 401 (7 of 20). Every endpoint is a read and safe to repeat (14 of 20). One required parameter per endpoint and sensible defaults, but no official SDK on the developer page beyond a label widget, and the organisation's Python library was last pushed in 2022 (8 of 15). 12 + 10 + 7 + 14 + 8 = 51.",
          "b": "`number` caps results on every search (1 to 100), `addRecipeInformation`, `fillIngredients` and `includeNutrition` switch sections on, and the MCP server lists six compact tools, but there is no field selection and full recipe objects are large (15 of 25). Offset and number pagination with filters by cuisine, diet, intolerances, nutrient ranges, equipment, time and sort keys (18 of 20). 402 and 429 are documented with quota headers, other errors are not, and no error body is shown (10 of 20). Reads are GET and safe to repeat, writes to meal plans and custom foods have no idempotency key, and the MCP tools carry no annotations (10 of 20). No required parameter on complexSearch and generated SDKs in 24 languages (15 of 15). 15 + 18 + 10 + 10 + 15 = 68."
        },
        "scores": {
          "a": 51,
          "b": 68
        }
      },
      {
        "by": 12,
        "category": "maintenance",
        "leads": "spoonacular",
        "name": "Maintenance \u0026 community",
        "reasons": {
          "a": "Read as a closed service. The newest dated first-hand change to the API's docs is the guide's update of 14 March 2024, more than 180 days before 3 November 2026; Syndigo's sub-processor list of 13 April 2026 and the vue-nutrition-label push of February 2026 are not API changes (0 of 30). No three dated changes in 90 days (0 of 20). Support through Syndigo's form and support@nutritionix.com for caching, no public changelog or community channel (5 of 15). No current official SDK; library-python last pushed December 2022, the label widget June 2024 (3 of 15). The organisation's packages show no CI or recent releases (2 of 10). 0 + 0 + 5 + 3 + 2 = 10.",
          "b": "Read as a closed service. The newest dated change on the updates page is February 2026 (Nutrition by Photo, recipe extraction from video), more than 180 days before 3 November 2026, and the SDK repository's last push is 2 December 2025 (0 of 30). No dated changes in the last 90 days (0 of 20). Updates page, Discord, contact form and paid support from $99 a month; three open issues on the clients repository could not be read (8 of 15). Generated SDKs in 24 languages, last pushed December 2025, and an npm MCP server, but no vendor entry in the official MCP registry, which lists only third-party spoonacular servers (10 of 15). spoonacular-mcp has one release (1.0.0, 4 August 2025), a test script and no CI (4 of 10). 0 + 0 + 8 + 10 + 4 = 22."
        },
        "scores": {
          "a": 10,
          "b": 22
        }
      }
    ],
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Syndigo LLC",
        "b": "skycraft GmbH",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "no (local only)",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "stdio",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Paid",
        "b": "Freemium",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "0",
        "b": "6",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2024-03-14",
        "b": "2026-02-01",
        "name": "Last release"
      },
      {
        "a": "2019-01-22",
        "b": "2026-04-16",
        "name": "Terms last updated"
      },
      {
        "a": "2026-03-25",
        "b": "no date given",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "192 stars",
        "b": "6 stars",
        "name": "Popularity"
      }
    ],
    "faq": [
      {
        "answer": "spoonacular scores 49 (D) on agent readiness against Nutritionix API's 33.6 (F), and leads in 6 of 7 scored categories. Nutritionix API leads on security \u0026 auth.",
        "question": "Which is better for AI agents, Nutritionix API or spoonacular?"
      },
      {
        "answer": "Both need an API key.",
        "question": "Do Nutritionix API and spoonacular need an API key?"
      },
      {
        "answer": "No hosted endpoint is listed for Nutritionix API. spoonacular runs on your own machine, with no hosted endpoint listed.",
        "question": "Can an agent call Nutritionix API and spoonacular without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Security \u0026 auth, 52 against 20"
        ],
        "also": null,
        "goodFor": "Agents that log meals from free text for a US or UK audience and need branded grocery and restaurant nutrition with UPCs, under a sales contract.",
        "slug": "nutritionix",
        "watchFor": "No public free tier or published price; a limited trial is granted by sales after a form on www.nutritionix.com"
      },
      {
        "aheadOn": [
          "Reliability, 58 against 15",
          "Schema \u0026 documentation, 65 against 45",
          "Agent ergonomics, 68 against 51",
          "Payments \u0026 pricing, 40 against 0",
          "Maintenance \u0026 community, 22 against 10"
        ],
        "also": [
          "Runs on your own machine",
          "Free to start without a card"
        ],
        "goodFor": "Agents that need recipe search with diet and nutrient filters, ingredient substitutions and nutrition, and meal plans or shopping lists written to a connected user.",
        "slug": "spoonacular",
        "watchFor": "One all-powerful key per account, documented in the `apiKey` query parameter and sent that way by the MCP server"
      }
    ],
    "history": null,
    "job": {
      "capability": "cooking.nutrition",
      "name": "Cooking nutrition"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/eat-this-much-vs-nutritionix.json",
        "title": "Eat This Much Partner API vs Nutritionix API",
        "url": "https://www.anchorterminal.com/compare/eat-this-much-vs-nutritionix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/edamam-vs-nutritionix.json",
        "title": "Edamam vs Nutritionix API",
        "url": "https://www.anchorterminal.com/compare/edamam-vs-nutritionix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fatsecret-vs-nutritionix.json",
        "title": "fatsecret Platform API vs Nutritionix API",
        "url": "https://www.anchorterminal.com/compare/fatsecret-vs-nutritionix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/fatsecret-vs-spoonacular.json",
        "title": "fatsecret Platform API vs spoonacular",
        "url": "https://www.anchorterminal.com/compare/fatsecret-vs-spoonacular"
      },
      {
        "json": "https://www.anchorterminal.com/compare/logmeal-vs-nutritionix.json",
        "title": "LogMeal vs Nutritionix API",
        "url": "https://www.anchorterminal.com/compare/logmeal-vs-nutritionix"
      },
      {
        "json": "https://www.anchorterminal.com/compare/edamam-vs-spoonacular.json",
        "title": "Edamam vs spoonacular",
        "url": "https://www.anchorterminal.com/compare/edamam-vs-spoonacular"
      },
      {
        "json": "https://www.anchorterminal.com/compare/eat-this-much-vs-spoonacular.json",
        "title": "Eat This Much Partner API vs spoonacular",
        "url": "https://www.anchorterminal.com/compare/eat-this-much-vs-spoonacular"
      },
      {
        "json": "https://www.anchorterminal.com/compare/logmeal-vs-spoonacular.json",
        "title": "LogMeal vs spoonacular",
        "url": "https://www.anchorterminal.com/compare/logmeal-vs-spoonacular"
      }
    ],
    "panel": null,
    "scores": [
      {
        "by": 43,
        "edge": "spoonacular",
        "key": "reliability",
        "name": "Reliability",
        "nutritionix": 15,
        "spoonacular": 58,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 20,
        "edge": "spoonacular",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "nutritionix": 45,
        "spoonacular": 65,
        "weight": 13
      },
      {
        "by": 17,
        "edge": "spoonacular",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "nutritionix": 51,
        "spoonacular": 68,
        "weight": 13
      },
      {
        "by": 32,
        "edge": "nutritionix",
        "key": "security",
        "name": "Security \u0026 auth",
        "nutritionix": 52,
        "spoonacular": 20,
        "weight": 14
      },
      {
        "by": 40,
        "edge": "spoonacular",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "nutritionix": 0,
        "spoonacular": 40,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 12,
        "edge": "spoonacular",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "nutritionix": 10,
        "spoonacular": 22,
        "weight": 7
      },
      {
        "by": 4,
        "edge": "spoonacular",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "nutritionix": 57,
        "spoonacular": 61,
        "weight": 7
      }
    ],
    "summary": "spoonacular scores 49 (D) on agent readiness against Nutritionix API's 33.6 (F), and leads in 6 of 7 scored categories. Nutritionix API leads on security \u0026 auth. Both do cooking nutrition.",
    "tasks": null,
    "tutorials": [],
    "verdicts": {
      "nutritionix": "Free-text food logging and a branded-food and restaurant database behind four header-authenticated endpoints, documented in Markdown with an llms.txt index and backed by Syndigo's sub-processor list and disclosure programme. There is no public price or free tier since the open trial ended, no documented rate limit or 429, and the status, terms and pricing pages are closed to our reader.",
      "spoonacular": "A broad recipe, ingredient, product and meal-plan API with a public OpenAPI document, 24 generated SDKs and a free 50-point day with no card. One key per account travels in the query string by default, the status page showed no data to our reader, and the terms allow caching for an hour at most."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/nutritionix-vs-spoonacular",
    "json": "https://www.anchorterminal.com/compare/nutritionix-vs-spoonacular.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/nutritionix-vs-spoonacular.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/nutritionix-vs-spoonacular.min.md"
  },
  "markdown": "spoonacular scores 49 (D) on agent readiness against Nutritionix API's 33.6 (F), and leads in 6 of 7 scored categories. Nutritionix API leads on security \u0026 auth. Both do cooking nutrition.\n\n- Nutritionix API: grade F, 33.6/100, rank #1257 of 1349. Markdown https://www.anchorterminal.com/tools/nutritionix.md · JSON https://www.anchorterminal.com/api/v1/tools/nutritionix.json\n- spoonacular: grade D, 49/100, rank #1010 of 1349. Markdown https://www.anchorterminal.com/tools/spoonacular.md · JSON https://www.anchorterminal.com/api/v1/tools/spoonacular.json\n- Best recipe, nutrition and meal planning APIs for AI agents: https://www.anchorterminal.com/best/cooking/index.md\n- All 28 cooking comparisons: https://www.anchorterminal.com/compare/cooking/index.md\n\n## Which one, for what\n\n### Nutritionix API (F)\n\nGood for: Agents that log meals from free text for a US or UK audience and need branded grocery and restaurant nutrition with UPCs, under a sales contract.\n\nAhead on:\n- Security \u0026 auth, 52 against 20\n\nWatch for: No public free tier or published price; a limited trial is granted by sales after a form on www.nutritionix.com\n\n### spoonacular (D)\n\nGood for: Agents that need recipe search with diet and nutrient filters, ingredient substitutions and nutrition, and meal plans or shopping lists written to a connected user.\n\nAhead on:\n- Reliability, 58 against 15\n- Schema \u0026 documentation, 65 against 45\n- Agent ergonomics, 68 against 51\n- Payments \u0026 pricing, 40 against 0\n- Maintenance \u0026 community, 22 against 10\n\nAlso in its favour:\n- Runs on your own machine\n- Free to start without a card\n\nWatch for: One all-powerful key per account, documented in the `apiKey` query parameter and sent that way by the MCP server\n\n\n## Why the edge\n\n### Reliability: spoonacular +43\n\n- Nutritionix API (15): Read with the hosted lines. The docs name a status page at status.nutritionix.com, but that host's robots.txt disallows our reader, so it is scored as unread (0 of 20) with no incident history (5). No rate limit figure appears anywhere in the docs (0 of 15). No 429, Retry-After or backoff guidance; the error page files 'usage limits exceeded' under 401 (0 of 15). No SLA found (0). The v2 API is generally available (10). 0 + 5 + 0 + 0 + 0 + 10 = 15.\n- spoonacular (58): Read with the hosted lines. A status page exists at status.spoonacular.com (UptimeRobot), but on 3 November 2026 it rendered 'There was an error while fetching the data' with no components or history, so half credit (10 of 20) and no readable incident record (5). Daily point quotas and requests-per-second limits are published by plan, 60 a minute on Free and 5, 10 and 20 a second on Cook, Culinarian and Chef (15). HTTP 429 and 402 are documented with three quota headers, but there is no Retry-After, backoff guidance or idempotency key for the meal-plan writes (8 of 15). The pricing page states 99 per cent uptime on Cook and Culinarian and 99.9 per cent on Chef, and the FAQ says SLAs are sold above $250 a month (10). The API is generally available (10). 10 + 5 + 15 + 8 + 10 + 10 = 58.\n\n### Payments \u0026 pricing: spoonacular +40\n\n- Nutritionix API (0): No x402, MPP or L402 (0 of 40). No price is published on any page read; the pricing page on www.nutritionix.com is closed to our reader and the developer portal routes to sales (0 of 20, unchecked). The developer portal says the public free-access tier has ended and a limited trial is granted by sales (0 of 20). A person files a form and waits for a sales follow-up (0 of 20). Total 0.\n- spoonacular (40): No x402, MPP or L402 (0 of 40). Plan prices and per-point overage rates ($0.005, $0.004 and $0.002) are public, with the point cost of every endpoint (20). The Free plan gives 50 points a day with no card (20). A person signs up in the console in a browser, and no key API exists (0 of 20). 0 + 20 + 20 + 0 = 40.\n\n### Security \u0026 auth: Nutritionix API +32\n\n- Nutritionix API (52): An application id and key pair with no scopes, sent only as headers per the docs, which say not to use the query string; no expiry or rotation documented (18 of 30). The API is read-only, so nothing destructive is reachable, but there is no read-only or per-user credential (12 of 20). Food, brand and menu names come from brands and restaurants through Syndigo, with little free text and no guidance on treating it as untrusted (8 of 15). `x-remote-user-id` counts active users for billing; no request log or per-call visibility for the operator was found (2 of 15). Syndigo runs a responsible disclosure programme on Bugcrowd without compensation, holds SOC 2 Type II for named products that do not include Nutritionix, and lists the Nutritionix API's sub-processors; no security.txt (12 of 20). 18 + 12 + 8 + 2 + 12 = 52.\n- spoonacular (20): One key per account with no scopes, expiry or rotation procedure, documented first as the `apiKey` query parameter and also sent in the query string by the MCP server; the `x-api-key` header is the alternative. One all-powerful key (10) less 10 for the documented query string (0 of 30). The data endpoints are read-only and a user's meal plan is written only with that user's `username` and `hash`, but there is no read-only key mode or confirmation step (10 of 20). Recipe text, instructions and extracted pages come from third-party websites and no guidance on treating them as untrusted was found (5 of 15). The console shows quota use and the headers report it per call, but no request log was found (5 of 15). security.txt returns 404 and no disclosure policy, bug bounty or certification was found (0 of 20). 0 + 10 + 5 + 5 + 0 = 20.\n\n### Schema \u0026 documentation: spoonacular +20\n\n- Nutritionix API (45): No OpenAPI or similar document was found (0 of 25). Syndigo's docs portal serves an llms.txt index and a Markdown twin of every Nutritionix page (10). Each endpoint page states its purpose with usage guidance, such as debouncing instant searches and using the right follow-up endpoint for common and branded foods (13 of 20). Parameters are typed with defaults, but the only required column reads 'Required for Authentication', taxonomy_node_id is typed boolean while described as an id, and claims values sit in prose (8 of 15). Request and response examples on each endpoint; six error statuses with one line each and no body format (9 of 15). v2 in the path, no changelog, and the API guide last updated on 14 March 2024 (5 of 15). 0 + 10 + 13 + 8 + 9 + 5 = 45.\n- spoonacular (65): Public OpenAPI 3.0.0 document (info version 2.0.2, 97 paths, 99 operations) in the vendor's spoonacular-api-clients repository, linked from the SDK page, and the MCP server's six tools carry JSON Schema inputs (25). No llms.txt (404) and no Markdown docs (0 of 10). Each endpoint states its purpose and point cost, with little on when not to use it (12 of 20). Parameters are typed with required flags, `number` is bounded, but diet, cuisine, intolerance and meal-type values sit in prose lists rather than enums (9 of 15). Request and response examples on every endpoint, 402 and 429 documented in the quota text, but the OpenAPI document lists only 200, 401, 403 and 404 and no error body shape (9 of 15). No version in the path; a dated updates page by month back to February 2020 records field removals with notice, the last in December 2022 for 30 June 2023 (10 of 15). 25 + 0 + 12 + 9 + 9 + 10 = 65.\n\n### Agent ergonomics: spoonacular +17\n\n- Nutritionix API (51): Instant returns at most 20 common and 20 branded items and premium `detailed_nutrients` picks up to three nutrients, but natural nutrients returns every food with a full nutrient array and there is no general field selection (12 of 25). No pagination; filters by branded, common, brand id, brand type and region (10 of 20). Six statuses with a line each, no codes in the body, and limit errors folded into 401 (7 of 20). Every endpoint is a read and safe to repeat (14 of 20). One required parameter per endpoint and sensible defaults, but no official SDK on the developer page beyond a label widget, and the organisation's Python library was last pushed in 2022 (8 of 15). 12 + 10 + 7 + 14 + 8 = 51.\n- spoonacular (68): `number` caps results on every search (1 to 100), `addRecipeInformation`, `fillIngredients` and `includeNutrition` switch sections on, and the MCP server lists six compact tools, but there is no field selection and full recipe objects are large (15 of 25). Offset and number pagination with filters by cuisine, diet, intolerances, nutrient ranges, equipment, time and sort keys (18 of 20). 402 and 429 are documented with quota headers, other errors are not, and no error body is shown (10 of 20). Reads are GET and safe to repeat, writes to meal plans and custom foods have no idempotency key, and the MCP tools carry no annotations (10 of 20). No required parameter on complexSearch and generated SDKs in 24 languages (15 of 15). 15 + 18 + 10 + 10 + 15 = 68.\n\n### Maintenance \u0026 community: spoonacular +12\n\n- Nutritionix API (10): Read as a closed service. The newest dated first-hand change to the API's docs is the guide's update of 14 March 2024, more than 180 days before 3 November 2026; Syndigo's sub-processor list of 13 April 2026 and the vue-nutrition-label push of February 2026 are not API changes (0 of 30). No three dated changes in 90 days (0 of 20). Support through Syndigo's form and support@nutritionix.com for caching, no public changelog or community channel (5 of 15). No current official SDK; library-python last pushed December 2022, the label widget June 2024 (3 of 15). The organisation's packages show no CI or recent releases (2 of 10). 0 + 0 + 5 + 3 + 2 = 10.\n- spoonacular (22): Read as a closed service. The newest dated change on the updates page is February 2026 (Nutrition by Photo, recipe extraction from video), more than 180 days before 3 November 2026, and the SDK repository's last push is 2 December 2025 (0 of 30). No dated changes in the last 90 days (0 of 20). Updates page, Discord, contact form and paid support from $99 a month; three open issues on the clients repository could not be read (8 of 15). Generated SDKs in 24 languages, last pushed December 2025, and an npm MCP server, but no vendor entry in the official MCP registry, which lists only third-party spoonacular servers (10 of 15). spoonacular-mcp has one release (1.0.0, 4 August 2025), a test script and no CI (4 of 10). 0 + 0 + 8 + 10 + 4 = 22.\n\n## Score by category\n\n| Category | Weight | Nutritionix API | spoonacular | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 15 | 58 | spoonacular +43 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 45 | 65 | spoonacular +20 |\n| Agent ergonomics | 13% (16.2 this run) | 51 | 68 | spoonacular +17 |\n| Security \u0026 auth | 14% (17.5 this run) | 52 | 20 | Nutritionix API +32 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 0 | 40 | spoonacular +40 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 10 | 22 | spoonacular +12 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 57 | 61 | spoonacular +4 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **33.6 · F** | **49 · D** | |\n\n## Facts side by side\n\n| Fact | Nutritionix API | spoonacular |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Syndigo LLC | skycraft GmbH |\n| Hosted endpoint | no (local only) | no (local only) |\n| Transports |  | stdio |\n| Auth | API key | API key |\n| Pricing | Paid | Freemium |\n| x402 | no | no |\n| Tools exposed | 0 | 6 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | no |\n| Last release | 2024-03-14 | 2026-02-01 |\n| Terms last updated | 2019-01-22 | 2026-04-16 |\n| Privacy policy last updated | 2026-03-25 | no date given |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | not found in the text | not found in the text |\n| Popularity | 192 stars | 6 stars |\n\n## Verdicts\n\n**Nutritionix API.** Free-text food logging and a branded-food and restaurant database behind four header-authenticated endpoints, documented in Markdown with an llms.txt index and backed by Syndigo's sub-processor list and disclosure programme. There is no public price or free tier since the open trial ended, no documented rate limit or 429, and the status, terms and pricing pages are closed to our reader.\n\n**spoonacular.** A broad recipe, ingredient, product and meal-plan API with a public OpenAPI document, 24 generated SDKs and a free 50-point day with no card. One key per account travels in the query string by default, the status page showed no data to our reader, and the terms allow caching for an hour at most.\n\n## Before you call either\n\n### Nutritionix API\n\n1. Do not plan on self-serve access; a person must request a trial through Syndigo's sales form, so ask for an existing app id and key before starting\n2. Send `x-app-id` and `x-app-key` as headers and set `x-remote-user-id` per end user (0 in development), since billing counts active users\n3. Treat a 401 as either a bad key or an exhausted usage limit; the docs give no limit figure, so back off before retrying\n4. Debounce instant searches by 300 ms and send at least 3 characters, then pass `food_name` to natural/nutrients for common foods and `nix_item_id` to search/item for branded ones\n5. Cache only a person's own logged results; cached data may not be shown to another user\n\n### spoonacular\n\n1. Send the key as the `x-api-key` header rather than `apiKey=` in the URL, and keep `number` small, since every result adds 0.01 points to the call's cost\n2. Read `X-API-Quota-Left` on each response; a 402 means the day's points are gone until midnight UTC and a 429 means the plan's requests-per-second limit, with no Retry-After to wait on\n3. Use `/recipes/complexSearch` with `addRecipeInformation=true` for one call instead of a search followed by one information call per recipe\n4. Do not store ingredients, instructions or nutrition between sessions; the terms allow only recipe ids, titles and image urls to be kept\n5. Show the original recipe source and a link to it with every recipe, as the terms require\n\n## Questions\n\n### Which is better for AI agents, Nutritionix API or spoonacular?\n\nspoonacular scores 49 (D) on agent readiness against Nutritionix API's 33.6 (F), and leads in 6 of 7 scored categories. Nutritionix API leads on security \u0026 auth.\n\n### Do Nutritionix API and spoonacular need an API key?\n\nBoth need an API key.\n\n### Can an agent call Nutritionix API and spoonacular without installing anything?\n\nNo hosted endpoint is listed for Nutritionix API. spoonacular runs on your own machine, with no hosted endpoint listed.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/nutritionix-vs-spoonacular.json, and with the fewest tokens: https://www.anchorterminal.com/compare/nutritionix-vs-spoonacular.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"nutritionix\", \"b\": \"spoonacular\"}`. From a terminal: `anchor compare nutritionix spoonacular`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/nutritionix.json and https://www.anchorterminal.com/api/v1/tools/spoonacular.json\n\n## Other comparisons with Nutritionix API or spoonacular\n\n- [Eat This Much Partner API vs Nutritionix API](https://www.anchorterminal.com/compare/eat-this-much-vs-nutritionix.md)\n- [Edamam vs Nutritionix API](https://www.anchorterminal.com/compare/edamam-vs-nutritionix.md)\n- [fatsecret Platform API vs Nutritionix API](https://www.anchorterminal.com/compare/fatsecret-vs-nutritionix.md)\n- [fatsecret Platform API vs spoonacular](https://www.anchorterminal.com/compare/fatsecret-vs-spoonacular.md)\n- [LogMeal vs Nutritionix API](https://www.anchorterminal.com/compare/logmeal-vs-nutritionix.md)\n- [Edamam vs spoonacular](https://www.anchorterminal.com/compare/edamam-vs-spoonacular.md)\n- [Eat This Much Partner API vs spoonacular](https://www.anchorterminal.com/compare/eat-this-much-vs-spoonacular.md)\n- [LogMeal vs spoonacular](https://www.anchorterminal.com/compare/logmeal-vs-spoonacular.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-04",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Nutritionix API vs spoonacular",
        "url": ""
      }
    ],
    "description": "spoonacular scores 49 (D) to Nutritionix's 33.6 (F) for cooking nutrition. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Nutritionix API F 33.6",
      "spoonacular D 49",
      "scores"
    ],
    "h1": "Nutritionix API vs spoonacular",
    "image": "https://www.anchorterminal.com/assets/og/default.png",
    "path": "/compare/nutritionix-vs-spoonacular",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Nutritionix vs spoonacular for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-11-04",
    "url": "https://www.anchorterminal.com/compare/nutritionix-vs-spoonacular"
  },
  "tokens": {
    "markdown": 4300,
    "slim": 2780
  },
  "version": 1
}
