{
 "meta": {
  "note": "Pricing tiers used by the FetchIndex calculator. Rules: see /calculator/ and scripts/calc_engine.py. Prices only; confirm on the vendor's site.",
  "schema": "tier.kind=payg: cost=N/1000*rate; tier.kind=alloc: cost=fee if N<=cap, fee+(N-cap)/1000*over if over is set, otherwise the plan cannot serve N. conf: published | component | assumption."
 },
 "calculator": {
  "updated": "2026-10-16",
  "data_version": "2026.10.16",
  "modes": [
   {
    "id": "page_basic",
    "label": "Plain pages (no JS rendering)",
    "phrase": "plain pages",
    "group": "pages",
    "desc": "One successful page/URL fetch with no JavaScript rendering and no premium anti-bot tier."
   },
   {
    "id": "page_js",
    "label": "JavaScript-rendered pages",
    "phrase": "JavaScript-rendered pages",
    "group": "pages",
    "desc": "One page that needs a headless browser to render."
   },
   {
    "id": "page_protected",
    "label": "Anti-bot protected pages",
    "phrase": "anti-bot protected pages",
    "group": "pages",
    "desc": "One page behind aggressive bot protection using the vendor's premium unblocking path."
   },
   {
    "id": "content_extract",
    "label": "LLM-ready markdown from a URL",
    "phrase": "URL-to-markdown conversions",
    "group": "other",
    "desc": "One URL converted to clean markdown/text for RAG or agents."
   },
   {
    "id": "serp",
    "label": "SERP queries (structured results)",
    "phrase": "SERP queries",
    "group": "other",
    "desc": "One search-engine results page returned as structured data."
   },
   {
    "id": "search_ai",
    "label": "AI / agent search queries",
    "phrase": "AI search queries",
    "group": "other",
    "desc": "One web search for an LLM/agent (about 10 results)."
   }
  ],
  "vendors": [
   {
    "id": "firecrawl",
    "name": "Firecrawl",
    "url": "/vendors/firecrawl/",
    "pricing_url": "https://www.firecrawl.dev/pricing",
    "checked": "2026-10-16",
    "status": "full",
    "free": "1,000 credits/month, no card (about 1,000 pages or 500 searches), 2 concurrent requests.",
    "tiers": {
     "page_basic": [
      {
       "plan": "Hobby",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 3.8,
       "kind": "alloc",
       "fee": 19,
       "cap": 5000.0,
       "over": 5.0
      },
      {
       "plan": "Hobby",
       "billing": "annual",
       "conf": "published",
       "usd1k": 3.2,
       "kind": "alloc",
       "fee": 16,
       "cap": 5000.0,
       "over": 5.0
      },
      {
       "plan": "Standard",
       "billing": "annual",
       "conf": "published",
       "usd1k": 0.83,
       "kind": "alloc",
       "fee": 83,
       "cap": 100000.0,
       "over": 2.5
      },
      {
       "plan": "Growth",
       "billing": "annual",
       "conf": "published",
       "usd1k": 0.666,
       "kind": "alloc",
       "fee": 333,
       "cap": 500000.0,
       "over": null
      },
      {
       "plan": "Scale",
       "billing": "annual",
       "conf": "published",
       "usd1k": 0.599,
       "kind": "alloc",
       "fee": 599,
       "cap": 1000000.0,
       "over": 1.0
      }
     ],
     "content_extract": [
      {
       "plan": "Standard",
       "billing": "annual",
       "conf": "published",
       "usd1k": 0.83,
       "kind": "alloc",
       "fee": 83,
       "cap": 100000.0,
       "over": null
      }
     ],
     "search_ai": [
      {
       "plan": "Standard",
       "billing": "annual",
       "conf": "published",
       "usd1k": 1.66,
       "kind": "alloc",
       "fee": 83,
       "cap": 50000.0,
       "over": null
      },
      {
       "plan": "Hobby",
       "billing": "annual",
       "conf": "published",
       "usd1k": 6.4,
       "kind": "alloc",
       "fee": 16,
       "cap": 2500.0,
       "over": null
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "page_protected",
      "note": "Stealth/enhanced proxy credit cost is not stated on the pricing page; not computed."
     },
     {
      "field": "plans.Standard/Growth/Scale.price_usd_month",
      "note": "Monthly-billed prices not shown on the page (only annual-billed)."
     }
    ]
   },
   {
    "id": "apify",
    "name": "Apify",
    "url": "/vendors/apify/",
    "pricing_url": "https://apify.com/pricing",
    "checked": "2026-10-16",
    "status": "partial",
    "free": "$5 of prepaid usage per month, no credit card.",
    "tiers": {
     "page_protected": [
      {
       "plan": "Free/Starter (Unblocker)",
       "billing": "payg",
       "conf": "component",
       "usd1k": 1.5,
       "kind": "payg",
       "rate": 1.5
      },
      {
       "plan": "Scale (Unblocker)",
       "billing": "monthly",
       "conf": "component",
       "usd1k": 1.25,
       "kind": "alloc",
       "fee": 199,
       "cap": 159200.0,
       "over": null,
       "basis": "spend"
      },
      {
       "plan": "Business (Unblocker)",
       "billing": "monthly",
       "conf": "component",
       "usd1k": 1.0,
       "kind": "alloc",
       "fee": 999,
       "cap": 999000.0,
       "over": null,
       "basis": "spend"
      }
     ],
     "serp": [
      {
       "plan": "Free/Starter (SERP proxy)",
       "billing": "payg",
       "conf": "component",
       "usd1k": 2.5,
       "kind": "payg",
       "rate": 2.5
      },
      {
       "plan": "Business (SERP proxy)",
       "billing": "monthly",
       "conf": "component",
       "usd1k": 1.7,
       "kind": "alloc",
       "fee": 999,
       "cap": 587647.06,
       "over": null,
       "basis": "spend"
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "page_basic / content_extract",
      "note": "Per-result prices are set per Actor (pay-per-event etc.). No honest platform-wide per-page figure; left null."
     }
    ]
   },
   {
    "id": "bright-data",
    "name": "Bright Data",
    "url": "/vendors/bright-data/",
    "pricing_url": "https://brightdata.com/pricing",
    "checked": "2026-10-16",
    "status": "full",
    "free": "Unlocker and SERP APIs: 5K requests/month free, no card (as stated on their pricing pages). Browser API page lists a 1 GB monthly free tier.",
    "tiers": {
     "page_basic": [
      {
       "plan": "Crawl API PAYG",
       "billing": "payg",
       "conf": "published",
       "usd1k": 1.5,
       "kind": "payg",
       "rate": 1.5
      },
      {
       "plan": "Crawl API $499",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.3132,
       "kind": "alloc",
       "fee": 499,
       "cap": 380000.0,
       "over": null
      },
      {
       "plan": "Crawl API $999",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.11,
       "kind": "alloc",
       "fee": 999,
       "cap": 900000.0,
       "over": null
      },
      {
       "plan": "Crawl API $1,999",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.9995,
       "kind": "alloc",
       "fee": 1999,
       "cap": 2000000.0,
       "over": null
      }
     ],
     "page_protected": [
      {
       "plan": "Unlocker PAYG",
       "billing": "payg",
       "conf": "published",
       "usd1k": 1.5,
       "kind": "payg",
       "rate": 1.5
      },
      {
       "plan": "Unlocker Scale ($499)",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.3029,
       "kind": "alloc",
       "fee": 499,
       "cap": 383000.0,
       "over": null
      }
     ],
     "serp": [
      {
       "plan": "SERP PAYG",
       "billing": "payg",
       "conf": "published",
       "usd1k": 1.5,
       "kind": "payg",
       "rate": 1.5
      },
      {
       "plan": "SERP Scale ($499)",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.3132,
       "kind": "alloc",
       "fee": 499,
       "cap": 380000.0,
       "over": null
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "Browser API per page",
      "note": "Billed per GB; page weight varies, so no per-page figure computed."
     },
     {
      "field": "Browser API Scale overage",
      "note": "Not stated on page."
     }
    ]
   },
   {
    "id": "oxylabs",
    "name": "Oxylabs",
    "url": "/vendors/oxylabs/",
    "pricing_url": "https://oxylabs.io/pricing",
    "checked": "2026-10-16",
    "status": "full",
    "free": "$5 welcome credit toward any product (one-time as described), no ongoing free tier stated.",
    "tiers": {
     "page_basic": [
      {
       "plan": "Starter - custom domain non-JS",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.0,
       "kind": "alloc",
       "fee": 30,
       "cap": 30000.0,
       "over": null,
       "basis": "spend"
      },
      {
       "plan": "Flexible - custom domain non-JS",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.8,
       "kind": "alloc",
       "fee": 500,
       "cap": 625000.0,
       "over": null,
       "basis": "spend"
      }
     ],
     "page_js": [
      {
       "plan": "Starter - custom domain JS",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.5,
       "kind": "alloc",
       "fee": 30,
       "cap": 20000.0,
       "over": null,
       "basis": "spend"
      },
      {
       "plan": "Flexible - custom domain JS",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.3,
       "kind": "alloc",
       "fee": 500,
       "cap": 384615.38,
       "over": null,
       "basis": "spend"
      }
     ],
     "serp": [
      {
       "plan": "Starter - /Search",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.0,
       "kind": "alloc",
       "fee": 30,
       "cap": 30000.0,
       "over": null,
       "basis": "spend"
      },
      {
       "plan": "Starter - Google non-JS",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.0,
       "kind": "alloc",
       "fee": 30,
       "cap": 30000.0,
       "over": null,
       "basis": "spend"
      },
      {
       "plan": "Flexible - Google non-JS",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.7,
       "kind": "alloc",
       "fee": 500,
       "cap": 714285.71,
       "over": null,
       "basis": "spend"
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "page_protected",
      "note": "Web Unblocker is billed per GB ($7.2/GB at Starter); no per-request figure without assuming page size."
     },
     {
      "field": "overage",
      "note": "Beyond-plan rates not stated; page says to top up via dashboard or contact account manager."
     }
    ]
   },
   {
    "id": "scraperapi",
    "name": "ScraperAPI",
    "url": "/vendors/scraperapi/",
    "pricing_url": "https://www.scraperapi.com/pricing/",
    "checked": "2026-10-16",
    "status": "partial",
    "free": "1,000 free credits/month (max 5 concurrent) per the FAQ; 7-day trial with 5,000 credits.",
    "tiers": {
     "page_basic": [
      {
       "plan": "Hobby",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.49,
       "kind": "alloc",
       "fee": 49,
       "cap": 100000.0,
       "over": null
      },
      {
       "plan": "Hobby",
       "billing": "annual",
       "conf": "published",
       "usd1k": 0.441,
       "kind": "alloc",
       "fee": 44.1,
       "cap": 100000.0,
       "over": null
      },
      {
       "plan": "Startup",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.149,
       "kind": "alloc",
       "fee": 149,
       "cap": 1000000.0,
       "over": null
      },
      {
       "plan": "Business",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.0997,
       "kind": "alloc",
       "fee": 299,
       "cap": 3000000.0,
       "over": null
      },
      {
       "plan": "Scaling",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.095,
       "kind": "alloc",
       "fee": 475,
       "cap": 5000000.0,
       "over": null
      }
     ],
     "page_protected": [
      {
       "plan": "Hobby",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 5.39,
       "kind": "alloc",
       "fee": 49,
       "cap": 9090.91,
       "over": null
      },
      {
       "plan": "Business",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.0963,
       "kind": "alloc",
       "fee": 299,
       "cap": 272727.27,
       "over": null
      },
      {
       "plan": "Scaling",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.045,
       "kind": "alloc",
       "fee": 475,
       "cap": 454545.45,
       "over": null
      }
     ],
     "serp": [
      {
       "plan": "Hobby (Google = 25 credits)",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 12.25,
       "kind": "alloc",
       "fee": 49,
       "cap": 4000.0,
       "over": null
      },
      {
       "plan": "Business (Google = 25 credits)",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 2.4917,
       "kind": "alloc",
       "fee": 299,
       "cap": 120000.0,
       "over": null
      },
      {
       "plan": "Scaling (Google = 25 credits)",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 2.375,
       "kind": "alloc",
       "fee": 475,
       "cap": 200000.0,
       "over": null
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "page_js",
      "note": "Credit multiplier for JavaScript rendering not stated on the pricing page/FAQ."
     },
     {
      "field": "pay_as_you_go",
      "note": "Per-credit PAYG rate for Scaling and above is not published."
     },
     {
      "field": "plans.Professional/Advanced",
      "note": "Bonus-credit offer makes included credits ambiguous; not normalized."
     }
    ]
   },
   {
    "id": "zenrows",
    "name": "ZenRows",
    "url": "/vendors/zenrows/",
    "pricing_url": "https://www.zenrows.com/pricing",
    "checked": "2026-10-16",
    "status": "partial",
    "free": "5,000 credits/month, no card, every primitive except standalone residential proxies.",
    "tiers": {
     "page_basic": [
      {
       "plan": "Build",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.4222,
       "kind": "alloc",
       "fee": 19,
       "cap": 45000.0,
       "over": null
      },
      {
       "plan": "Build",
       "billing": "annual",
       "conf": "published",
       "usd1k": 0.3556,
       "kind": "alloc",
       "fee": 16,
       "cap": 45000.0,
       "over": null
      },
      {
       "plan": "Launch",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.276,
       "kind": "alloc",
       "fee": 69,
       "cap": 250000.0,
       "over": null
      },
      {
       "plan": "Launch",
       "billing": "annual",
       "conf": "published",
       "usd1k": 0.232,
       "kind": "alloc",
       "fee": 58,
       "cap": 250000.0,
       "over": null
      },
      {
       "plan": "Growth",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.1658,
       "kind": "alloc",
       "fee": 199,
       "cap": 1200000.0,
       "over": null
      },
      {
       "plan": "Growth",
       "billing": "annual",
       "conf": "published",
       "usd1k": 0.1383,
       "kind": "alloc",
       "fee": 166,
       "cap": 1200000.0,
       "over": null
      },
      {
       "plan": "Scale",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.1098,
       "kind": "alloc",
       "fee": 549,
       "cap": 5000000.0,
       "over": null
      },
      {
       "plan": "Scale",
       "billing": "annual",
       "conf": "published",
       "usd1k": 0.0916,
       "kind": "alloc",
       "fee": 458,
       "cap": 5000000.0,
       "over": null
      }
     ],
     "page_js": [
      {
       "plan": "Build",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 2.1111,
       "kind": "alloc",
       "fee": 19,
       "cap": 9000.0,
       "over": null
      },
      {
       "plan": "Build",
       "billing": "annual",
       "conf": "published",
       "usd1k": 1.7778,
       "kind": "alloc",
       "fee": 16,
       "cap": 9000.0,
       "over": null
      },
      {
       "plan": "Launch",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.38,
       "kind": "alloc",
       "fee": 69,
       "cap": 50000.0,
       "over": null
      },
      {
       "plan": "Launch",
       "billing": "annual",
       "conf": "published",
       "usd1k": 1.16,
       "kind": "alloc",
       "fee": 58,
       "cap": 50000.0,
       "over": null
      },
      {
       "plan": "Growth",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.8292,
       "kind": "alloc",
       "fee": 199,
       "cap": 240000.0,
       "over": null
      },
      {
       "plan": "Growth",
       "billing": "annual",
       "conf": "published",
       "usd1k": 0.6917,
       "kind": "alloc",
       "fee": 166,
       "cap": 240000.0,
       "over": null
      },
      {
       "plan": "Scale",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.549,
       "kind": "alloc",
       "fee": 549,
       "cap": 1000000.0,
       "over": null
      },
      {
       "plan": "Scale",
       "billing": "annual",
       "conf": "published",
       "usd1k": 0.458,
       "kind": "alloc",
       "fee": 458,
       "cap": 1000000.0,
       "over": null
      }
     ],
     "page_protected": [
      {
       "plan": "Build",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 10.5556,
       "kind": "alloc",
       "fee": 19,
       "cap": 1800.0,
       "over": null
      },
      {
       "plan": "Build",
       "billing": "annual",
       "conf": "published",
       "usd1k": 8.8889,
       "kind": "alloc",
       "fee": 16,
       "cap": 1800.0,
       "over": null
      },
      {
       "plan": "Launch",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 6.9,
       "kind": "alloc",
       "fee": 69,
       "cap": 10000.0,
       "over": null
      },
      {
       "plan": "Launch",
       "billing": "annual",
       "conf": "published",
       "usd1k": 5.8,
       "kind": "alloc",
       "fee": 58,
       "cap": 10000.0,
       "over": null
      },
      {
       "plan": "Growth",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 4.1458,
       "kind": "alloc",
       "fee": 199,
       "cap": 48000.0,
       "over": null
      },
      {
       "plan": "Growth",
       "billing": "annual",
       "conf": "published",
       "usd1k": 3.4583,
       "kind": "alloc",
       "fee": 166,
       "cap": 48000.0,
       "over": null
      },
      {
       "plan": "Scale",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 2.745,
       "kind": "alloc",
       "fee": 549,
       "cap": 200000.0,
       "over": null
      },
      {
       "plan": "Scale",
       "billing": "annual",
       "conf": "published",
       "usd1k": 2.29,
       "kind": "alloc",
       "fee": 458,
       "cap": 200000.0,
       "over": null
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "top-up price",
      "note": "Top-ups (up to 10x per period) are offered but their price is not published on the pricing page."
     }
    ]
   },
   {
    "id": "browserbase",
    "name": "Browserbase",
    "url": "/vendors/browserbase/",
    "pricing_url": "https://www.browserbase.com/pricing",
    "checked": "2026-10-16",
    "status": "full",
    "free": "Free plan: 1 browser hour, 3 concurrent browsers, 1,000 search and 1,000 fetch calls, $5 in model tokens.",
    "tiers": {
     "page_basic": [
      {
       "plan": "Developer (Fetch API)",
       "billing": "payg",
       "conf": "published",
       "usd1k": 1.0,
       "kind": "alloc",
       "fee": 20,
       "cap": 1000.0,
       "over": 1.0
      },
      {
       "plan": "Startup (Fetch API)",
       "billing": "payg",
       "conf": "published",
       "usd1k": 0.5,
       "kind": "alloc",
       "fee": 99,
       "cap": 10000.0,
       "over": 0.5
      }
     ],
     "search_ai": [
      {
       "plan": "Parallel Fast",
       "billing": "payg",
       "conf": "published",
       "usd1k": 1.0,
       "kind": "alloc",
       "fee": 20,
       "cap": 1000.0,
       "over": 1.0
      }
     ]
    },
    "skipped": {
     "page_js": [
      "Developer (vendor's 3,000 tasks per 100 hours): needs a $20/mo plan but the included allowance is not stated in a form we can model",
      "Startup (vendor's 3,000 tasks per 100 hours): needs a $99/mo plan but the included allowance is not stated in a form we can model"
     ],
     "search_ai": [
      "Parallel Advanced (default): needs a $20/mo plan but the included allowance is not stated in a form we can model"
     ]
    },
    "gaps": [
     {
      "field": "page_protected",
      "note": "Stealth and captcha handling are plan features without a separate per-page price."
     }
    ]
   },
   {
    "id": "scrapfly",
    "name": "Scrapfly",
    "url": "/vendors/scrapfly/",
    "pricing_url": "https://scrapfly.io/pricing",
    "checked": "2026-10-16",
    "status": "full",
    "free": "1,000 credits on signup, no card, no time limit (one-time allotment).",
    "tiers": {
     "page_basic": [
      {
       "plan": "Discovery",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.15,
       "kind": "alloc",
       "fee": 30,
       "cap": 200000.0,
       "over": null
      },
      {
       "plan": "Pro",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.1,
       "kind": "alloc",
       "fee": 100,
       "cap": 1000000.0,
       "over": 0.35
      },
      {
       "plan": "Startup",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.1,
       "kind": "alloc",
       "fee": 250,
       "cap": 2500000.0,
       "over": 0.2
      },
      {
       "plan": "Enterprise",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.0909,
       "kind": "alloc",
       "fee": 500,
       "cap": 5500000.0,
       "over": 0.12
      }
     ],
     "page_js": [
      {
       "plan": "Discovery",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.75,
       "kind": "alloc",
       "fee": 30,
       "cap": 40000.0,
       "over": null
      },
      {
       "plan": "Pro",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.5,
       "kind": "alloc",
       "fee": 100,
       "cap": 200000.0,
       "over": null
      },
      {
       "plan": "Startup",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.5,
       "kind": "alloc",
       "fee": 250,
       "cap": 500000.0,
       "over": null
      },
      {
       "plan": "Enterprise",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.4545,
       "kind": "alloc",
       "fee": 500,
       "cap": 1100000.0,
       "over": null
      }
     ],
     "page_protected": [
      {
       "plan": "Discovery",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 3.75,
       "kind": "alloc",
       "fee": 30,
       "cap": 8000.0,
       "over": null
      },
      {
       "plan": "Pro",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 2.5,
       "kind": "alloc",
       "fee": 100,
       "cap": 40000.0,
       "over": null
      },
      {
       "plan": "Startup",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 2.5,
       "kind": "alloc",
       "fee": 250,
       "cap": 100000.0,
       "over": null
      },
      {
       "plan": "Enterprise",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 2.2727,
       "kind": "alloc",
       "fee": 500,
       "cap": 220000.0,
       "over": null
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "unblocker credit cost per target",
      "note": "The Unblocker's credit cost depends on the target; this site shows 5 and 25 credit reference points."
     }
    ]
   },
   {
    "id": "tavily",
    "name": "Tavily",
    "url": "/vendors/tavily/",
    "pricing_url": "https://www.tavily.com/pricing",
    "checked": "2026-10-16",
    "status": "full",
    "free": "1,000 API credits/month, no card. Free for students; 100k free credits advertised for startup-program applicants.",
    "tiers": {
     "content_extract": [
      {
       "plan": "Pay as you go",
       "billing": "payg",
       "conf": "published",
       "usd1k": 1.6,
       "kind": "payg",
       "rate": 1.6
      },
      {
       "plan": "Growth",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.0,
       "kind": "alloc",
       "fee": 500,
       "cap": 500000.0,
       "over": null
      }
     ],
     "search_ai": [
      {
       "plan": "Pay as you go",
       "billing": "payg",
       "conf": "published",
       "usd1k": 8.0,
       "kind": "payg",
       "rate": 8.0
      },
      {
       "plan": "Project",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 7.5,
       "kind": "alloc",
       "fee": 30,
       "cap": 4000.0,
       "over": null
      },
      {
       "plan": "Bootstrap",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 6.6667,
       "kind": "alloc",
       "fee": 100,
       "cap": 15000.0,
       "over": null
      },
      {
       "plan": "Startup",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 5.7895,
       "kind": "alloc",
       "fee": 220,
       "cap": 38000.0,
       "over": null
      },
      {
       "plan": "Growth",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 5.0,
       "kind": "alloc",
       "fee": 500,
       "cap": 100000.0,
       "over": null
      },
      {
       "plan": "Pay as you go (advanced search)",
       "billing": "payg",
       "conf": "published",
       "usd1k": 16.0,
       "kind": "payg",
       "rate": 16.0
      },
      {
       "plan": "Growth (advanced search)",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 10.0,
       "kind": "alloc",
       "fee": 500,
       "cap": 50000.0,
       "over": null
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "plan tiers above Project",
      "note": "Pricing page shows the Project slider ($30/4,000 credits); Bootstrap/Startup/Growth come from the official docs credits page."
     }
    ]
   },
   {
    "id": "exa",
    "name": "Exa",
    "url": "/vendors/exa/",
    "pricing_url": "https://exa.ai/pricing",
    "checked": "2026-10-16",
    "status": "full",
    "free": "$10 of credits every month plus a $10 onboarding bonus, no payment method.",
    "tiers": {
     "content_extract": [
      {
       "plan": "Contents (per content type)",
       "billing": "payg",
       "conf": "published",
       "usd1k": 1.0,
       "kind": "payg",
       "rate": 1.0
      }
     ],
     "search_ai": [
      {
       "plan": "Instant search",
       "billing": "payg",
       "conf": "published",
       "usd1k": 4.0,
       "kind": "payg",
       "rate": 4.0
      },
      {
       "plan": "Fast / Auto search",
       "billing": "payg",
       "conf": "published",
       "usd1k": 7.0,
       "kind": "payg",
       "rate": 7.0
      },
      {
       "plan": "Deep search",
       "billing": "payg",
       "conf": "published",
       "usd1k": 12.0,
       "kind": "payg",
       "rate": 12.0
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "search+contents bundle",
      "note": "Not stated whether text contents are bundled in the search price; contents are priced separately, so no combined figure computed."
     }
    ]
   },
   {
    "id": "serpapi",
    "name": "SerpApi",
    "url": "/vendors/serpapi/",
    "pricing_url": "https://serpapi.com/pricing",
    "checked": "2026-10-16",
    "status": "full",
    "free": "250 searches/month, 50/hour throughput.",
    "tiers": {
     "serp": [
      {
       "plan": "Starter",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 25.0,
       "kind": "alloc",
       "fee": 25,
       "cap": 1000.0,
       "over": null
      },
      {
       "plan": "Developer",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 15.0,
       "kind": "alloc",
       "fee": 75,
       "cap": 5000.0,
       "over": null
      },
      {
       "plan": "Production",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 10.0,
       "kind": "alloc",
       "fee": 150,
       "cap": 15000.0,
       "over": null
      },
      {
       "plan": "Big Data",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 9.1667,
       "kind": "alloc",
       "fee": 275,
       "cap": 30000.0,
       "over": null
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "overage",
      "note": "No per-search overage published; running out triggers early renewal of the plan."
     }
    ]
   },
   {
    "id": "jina-reader",
    "name": "Jina Reader",
    "url": "/vendors/jina-reader/",
    "pricing_url": "https://jina.ai/api-dashboard/pricing/",
    "checked": "2026-10-16",
    "status": "partial",
    "free": "No-key Reader at 20 RPM; new API keys come with 10M free tokens.",
    "tiers": {
     "content_extract": [
      {
       "plan": "$50 pack",
       "billing": "prepaid",
       "conf": "assumption",
       "usd1k": 0.1,
       "kind": "payg",
       "rate": 0.1
      },
      {
       "plan": "$500 pack",
       "billing": "prepaid",
       "conf": "assumption",
       "usd1k": 0.0909,
       "kind": "payg",
       "rate": 0.0909
      }
     ],
     "search_ai": [
      {
       "plan": "$50 pack (s.jina.ai minimum)",
       "billing": "prepaid",
       "conf": "component",
       "usd1k": 0.5,
       "lower_bound": true,
       "kind": "payg",
       "rate": 0.5
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "tokens per page",
      "note": "Not published; the per-page figure is an assumption."
     },
     {
      "field": "plan prices",
      "note": "Prices appear on the pricing page only after client-side rendering; read via headless Chrome."
     }
    ]
   },
   {
    "id": "zyte",
    "name": "Zyte",
    "url": "/vendors/zyte/",
    "pricing_url": "https://www.zyte.com/pricing/",
    "checked": "2026-10-16",
    "status": "full",
    "free": "$5 free credit trial; 30 days, no commitment.",
    "tiers": {
     "page_basic": [
      {
       "plan": "Pay as you go - Tier 1 HTTP",
       "billing": "payg",
       "conf": "published",
       "usd1k": 0.13,
       "kind": "payg",
       "rate": 0.13
      },
      {
       "plan": "$100/mo commitment - Tier 1 HTTP",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.1,
       "kind": "alloc",
       "fee": 100,
       "cap": 1000000.0,
       "over": null,
       "basis": "spend"
      },
      {
       "plan": "$200/mo commitment - Tier 1 HTTP",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.08,
       "kind": "alloc",
       "fee": 200,
       "cap": 2500000.0,
       "over": null,
       "basis": "spend"
      },
      {
       "plan": "$500/mo commitment - Tier 1 HTTP",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.06,
       "kind": "alloc",
       "fee": 500,
       "cap": 8333333.33,
       "over": null,
       "basis": "spend"
      }
     ],
     "page_js": [
      {
       "plan": "Pay as you go - Tier 1 rendered",
       "billing": "payg",
       "conf": "published",
       "usd1k": 1.01,
       "kind": "payg",
       "rate": 1.01
      },
      {
       "plan": "$100/mo commitment - Tier 1 rendered",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.75,
       "kind": "alloc",
       "fee": 100,
       "cap": 133333.33,
       "over": null,
       "basis": "spend"
      },
      {
       "plan": "$200/mo commitment - Tier 1 rendered",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.6,
       "kind": "alloc",
       "fee": 200,
       "cap": 333333.33,
       "over": null,
       "basis": "spend"
      },
      {
       "plan": "$500/mo commitment - Tier 1 rendered",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.48,
       "kind": "alloc",
       "fee": 500,
       "cap": 1041666.67,
       "over": null,
       "basis": "spend"
      }
     ],
     "page_protected": [
      {
       "plan": "Pay as you go - Tier 5 HTTP",
       "billing": "payg",
       "conf": "published",
       "usd1k": 1.27,
       "kind": "payg",
       "rate": 1.27
      },
      {
       "plan": "$100/mo commitment - Tier 5 HTTP",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.95,
       "kind": "alloc",
       "fee": 100,
       "cap": 105263.16,
       "over": null,
       "basis": "spend"
      },
      {
       "plan": "$200/mo commitment - Tier 5 HTTP",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.76,
       "kind": "alloc",
       "fee": 200,
       "cap": 263157.89,
       "over": null,
       "basis": "spend"
      },
      {
       "plan": "$500/mo commitment - Tier 5 HTTP",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.61,
       "kind": "alloc",
       "fee": 500,
       "cap": 819672.13,
       "over": null,
       "basis": "spend"
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "which tier a given site is",
      "note": "Zyte classifies each website; use their URL price checker. This site shows Tier 1 and Tier 5 bounds only."
     }
    ]
   },
   {
    "id": "crawl4ai",
    "name": "Crawl4AI",
    "url": "/vendors/crawl4ai/",
    "pricing_url": "https://crawl4ai.com/docs",
    "checked": "2026-10-16",
    "status": "full",
    "free": "Self-hosting is free forever (you pay your own infra). Cloud: 1,000 free credits/month, no card.",
    "tiers": {
     "page_basic": [
      {
       "plan": "Cloud Starter",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.5,
       "kind": "alloc",
       "fee": 10,
       "cap": 20000.0,
       "over": null
      },
      {
       "plan": "Cloud Builder",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.396,
       "kind": "alloc",
       "fee": 99,
       "cap": 250000.0,
       "over": 0.395
      },
      {
       "plan": "Cloud Scale",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.3327,
       "kind": "alloc",
       "fee": 499,
       "cap": 1500000.0,
       "over": null
      }
     ],
     "page_js": [
      {
       "plan": "Cloud Starter",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.0,
       "kind": "alloc",
       "fee": 10,
       "cap": 10000.0,
       "over": null
      },
      {
       "plan": "Cloud Builder",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.792,
       "kind": "alloc",
       "fee": 99,
       "cap": 125000.0,
       "over": null
      },
      {
       "plan": "Cloud Scale",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.6653,
       "kind": "alloc",
       "fee": 499,
       "cap": 750000.0,
       "over": null
      }
     ],
     "serp": [
      {
       "plan": "Cloud Starter",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.0,
       "kind": "alloc",
       "fee": 10,
       "cap": 10000.0,
       "over": null
      },
      {
       "plan": "Cloud Builder",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.792,
       "kind": "alloc",
       "fee": 99,
       "cap": 125000.0,
       "over": null
      },
      {
       "plan": "Cloud Scale",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.6653,
       "kind": "alloc",
       "fee": 499,
       "cap": 750000.0,
       "over": null
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "self-hosted cost",
      "note": "Depends on your servers/proxies; not computed."
     },
     {
      "field": "price stability",
      "note": "Vendor states cloud prices can change during soft launch."
     }
    ]
   },
   {
    "id": "scrapingbee",
    "name": "ScrapingBee",
    "url": "/vendors/scrapingbee/",
    "pricing_url": "https://www.scrapingbee.com/pricing/",
    "checked": "2026-10-16",
    "status": "full",
    "free": "1,000 free API credits, no card (trial grant).",
    "tiers": {
     "page_basic": [
      {
       "plan": "Hobby",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.2533,
       "kind": "alloc",
       "fee": 19,
       "cap": 75000.0,
       "over": null
      },
      {
       "plan": "Freelance",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.196,
       "kind": "alloc",
       "fee": 49,
       "cap": 250000.0,
       "over": null
      },
      {
       "plan": "Startup",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.099,
       "kind": "alloc",
       "fee": 99,
       "cap": 1000000.0,
       "over": null
      },
      {
       "plan": "Business",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.083,
       "kind": "alloc",
       "fee": 249,
       "cap": 3000000.0,
       "over": null
      }
     ],
     "page_js": [
      {
       "plan": "Hobby",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 1.2667,
       "kind": "alloc",
       "fee": 19,
       "cap": 15000.0,
       "over": null
      },
      {
       "plan": "Freelance",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.98,
       "kind": "alloc",
       "fee": 49,
       "cap": 50000.0,
       "over": null
      },
      {
       "plan": "Startup",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.495,
       "kind": "alloc",
       "fee": 99,
       "cap": 200000.0,
       "over": null
      },
      {
       "plan": "Business",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 0.415,
       "kind": "alloc",
       "fee": 249,
       "cap": 600000.0,
       "over": null
      }
     ],
     "page_protected": [
      {
       "plan": "Hobby",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 6.3333,
       "kind": "alloc",
       "fee": 19,
       "cap": 3000.0,
       "over": null
      },
      {
       "plan": "Freelance",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 4.9,
       "kind": "alloc",
       "fee": 49,
       "cap": 10000.0,
       "over": null
      },
      {
       "plan": "Startup",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 2.475,
       "kind": "alloc",
       "fee": 99,
       "cap": 40000.0,
       "over": null
      },
      {
       "plan": "Business",
       "billing": "monthly",
       "conf": "published",
       "usd1k": 2.075,
       "kind": "alloc",
       "fee": 249,
       "cap": 120000.0,
       "over": null
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "overage",
      "note": "No overage/top-up rate published on the pricing page."
     },
     {
      "field": "billing cadence",
      "note": "Page shows '/mo' prices; annual-discount terms not stated."
     }
    ]
   },
   {
    "id": "brave-search-api",
    "name": "Brave Search API",
    "url": "/vendors/brave-search-api/",
    "pricing_url": "https://brave.com/search/api/",
    "checked": "2026-10-16",
    "status": "full",
    "free": "$5 in free credits each month (about 1,000 searches); card required for verification.",
    "tiers": {
     "search_ai": [
      {
       "plan": "Search",
       "billing": "payg",
       "conf": "published",
       "usd1k": 5.0,
       "kind": "payg",
       "rate": 5.0
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "Answers all-in price",
      "note": "Token component depends on the query; not computed."
     }
    ]
   },
   {
    "id": "hyperbrowser",
    "name": "Hyperbrowser",
    "url": "/vendors/hyperbrowser/",
    "pricing_url": "https://www.hyperbrowser.ai/pricing",
    "checked": "2026-10-16",
    "status": "full",
    "free": "5,000 credits included with a free account (~50 browser hours or 5,000 fetched pages).",
    "tiers": {
     "page_basic": [
      {
       "plan": "All plans (Fetch)",
       "billing": "payg",
       "conf": "published",
       "usd1k": 1.0,
       "kind": "payg",
       "rate": 1.0
      }
     ],
     "page_protected": [
      {
       "plan": "All plans (Fetch + ultra stealth)",
       "billing": "payg",
       "conf": "published",
       "usd1k": 10.0,
       "kind": "payg",
       "rate": 10.0
      }
     ],
     "search_ai": [
      {
       "plan": "All plans",
       "billing": "payg",
       "conf": "published",
       "usd1k": 5.0,
       "kind": "payg",
       "rate": 5.0
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "JSON-output fetch",
      "note": "+5 credits/page; shown in unit notes but not normalized separately."
     }
    ]
   },
   {
    "id": "steel",
    "name": "Steel",
    "url": "/vendors/steel/",
    "pricing_url": "https://steel.dev/pricing",
    "checked": "2026-10-16",
    "status": "partial",
    "free": "$30 one-time usage credit on Launch; no card needed.",
    "tiers": {
     "page_basic": [
      {
       "plan": "Browser tools /scrape (plan not stated)",
       "billing": "payg",
       "conf": "component",
       "usd1k": 5.0,
       "kind": "payg",
       "rate": 5.0
      }
     ]
    },
    "skipped": {},
    "gaps": [
     {
      "field": "/scrape plan attribution",
      "note": "Which plan the $5/1k /scrape rate applies to is unclear on the page."
     },
     {
      "field": "mcp",
      "note": "No MCP server confirmed on the pages checked."
     }
    ]
   }
  ]
 }
}