Usage & Limits

Usage & Limits

How usage & limits work

Every Foodashi plan includes a monthly pool of API calls and a per-minute rate limit. This page explains exactly how calls are counted, what happens at each limit, and how extra usage (overage) is billed — so there are never any surprises.

How calls are counted

Your plan's monthly allowance is measured in API calls. Every request deducts a number of calls from your monthly pool based on how much work it does:

1
Standard endpoints
Recipe search, browse, details, nutrition, allergens, ingredient lookups — almost everything is a single call.
2–5
Heavy & semantic
Bulk lookups, multi-ingredient matching, and semantic vector search do more compute, so they cost a few calls.
65–400
AI endpoints
AI features (meal plans, recognition, analysis, pairings, tips) reflect their real model cost. Full list in section 4.

The exact cost of every endpoint is shown in the Documentation and inside the Test Kitchen before you send a request — you always know what a call will cost.

Monthly limits by plan

Your monthly pool resets at the start of each billing cycle. Unused calls don't roll over.

Plan Monthly calls Rate limit API keys Extra usage
Hobby Free 10,000 30 / min 1 Upgrade to unlock
Indie 150,000 600 / min Multiple $0.50 / 1,000 calls
Pro 1,000,000 3,000 / min Multiple $0.30 / 1,000 calls
Enterprise 10,000,000+ 10,000 / min Custom Custom

Need different numbers? See full plan comparison →

Rate limits (per minute)

Alongside your monthly pool, each plan has a requests-per-minute (RPM) ceiling to keep the API fast and fair for everyone. The two limits are independent: you can hit the per-minute limit even with plenty of monthly calls left (and vice-versa).

Per-minute limit reached

The API returns 429 Too Many Requests with a Retry-After header (seconds to wait). The window is a rolling 60 seconds.

Monthly pool exhausted

Also 429, with the message "Monthly Quota Exceeded", until your cycle resets or extra usage kicks in (section 5).

Best practice: respect Retry-After with exponential backoff, and spread bursts of requests rather than firing them all at once.

Endpoint call costs

Anything not listed below costs 1 call. These are the endpoints that cost more:

Endpoint What it does Cost
/api/meal-plan/generate AI Full AI weekly meal plan 400
/api/analyze/url AI AI recipe extraction from a web page 275
/api/meal-plan/customize AI AI swap or regenerate meals 200
/api/analyze/text AI AI recipe analysis from pasted text 175
/api/shopping-list/optimize AI AI-optimised shopping list 150
/api/recognize/ingredients AI Vision: identify ingredients in a photo 110
/api/pairing/beverages AI AI beverage pairing 90
/api/nutrition/log AI Natural-language food logging 85
/api/tips AI AI cooking tips for a recipe 75
/api/recognize/image AI Vision: identify a dish from a photo 65
/api/ingredients/batch Batch ingredient lookup 5
/api/recipes/analyze Nutrient, taste and medical analysis 5
/api/recipes/compare Compare recipes side by side 4
/api/recipes/by-nutrients Filter recipes by nutrient ranges 3
/api/ingredients/by-nutrient Find ingredients by nutrient content 3
/api/nutrition/label FDA / EU nutrition label 3
/api/nutrition/nutrimetric NutriMetric A–F grade 3
/api/nutrition/daily-needs Daily nutrient targets 3
/api/search Full-text and ingredient-match search 2
/api/ingredients/semantic-search Semantic vector ingredient search 2
/api/bulk-lookup Bulk recipe lookup 2
/api/recipes/by-ingredients Recipes from ingredients you have 2
/api/ingredients/compare Compare ingredients side by side 2
/api/shopping-list/from-recipes Shopping list from recipes 2
/api/shopping-list/from-meal-plan Shopping list from a meal plan 2

Extra usage (overage)

Run out of monthly calls but need to keep going? Indie and Pro plans can enable overage so your API keeps working instead of returning errors.

How it's billed
  • Indie: $0.50 per 1,000 extra calls
  • Pro: $0.30 per 1,000 extra calls
  • • Charged in pre-paid top-ups (default $10) as you go
Spend protection
  • • Overage is off by default — you opt in.
  • • You set a monthly overage cap; once hit, the API returns 429 instead of charging more.
  • • A leaked key can never run up an unbounded bill.

Hobby (free) plans don't have overage — when the 10,000 monthly calls are used up, requests return 429 until the cycle resets, or you upgrade to Indie/Pro.

Reading your usage

Every successful API response includes live usage headers, so you can track your limits programmatically without a separate call:

# Returned on every response
X-RateLimit-Limit:     600     # your per-minute ceiling
X-RateLimit-Remaining: 587     # calls left this minute
X-RateLimit-Reset:     42      # seconds until the minute resets
X-RateLimit-Window:    60s
X-Monthly-Limit:       150000  # your monthly pool
X-Monthly-Remaining:   148213  # calls left this cycle
X-Overage-Active:      true    # only present when running on overage

You can also see live usage, your current plan, and remaining calls any time in your Console dashboard.

Test Kitchen trial

The Test Kitchen lets you try paid (Indie/Pro) endpoints before upgrading, using a small free trial budget of 150 units per month. Each call spends from that budget at the same cost shown in section 4 (e.g. one meal-plan generation = 75 of your 150 units). It's there to let you evaluate the premium features — for production traffic, use your plan's monthly pool.

FAQ

No. Your monthly pool resets at the start of each billing cycle and unused calls don't carry over.
You get an HTTP 429 response. For the per-minute limit it includes a Retry-After header; for the monthly pool the message is "Monthly Quota Exceeded". On Indie/Pro with overage enabled, calls continue and are billed instead of blocked — up to your overage cap.
Requests rejected before processing (auth errors, validation 400s, rate-limit 429s) do not consume your monthly calls. Only successfully processed requests count.
Yes. Overage is opt-in, and you set a monthly overage cap. Once reached, the API returns 429 rather than charging beyond it — so a runaway script or leaked key can't produce an unbounded bill.
AI endpoints (meal plans, recognition, analysis, pairings, tips) cost more calls because each one runs a real AI model. Their exact cost is in section 4 and shown in the Test Kitchen before you send.
Still have a usage question?

Check the full API reference, or reach out and we'll help you size the right plan.