Head to head · Scraping · October 2026 research run

Microlink vs Scrapfly

Scrapfly scores 74.5 (BB) on agent readiness against Microlink's 65.9 (B), and leads in 3 of 7 scored categories. Microlink leads on payments & pricing. Both do scraping.

Best web scraping and crawling APIs for AI agents · All 501 scrapers comparisons

Which one, for what

Microlink B

Best for Agents that need link previews, screenshots, PDFs, metadata or a page as Markdown from one GET.

Ahead on

  • Payments & pricing, 47 against 40

Also in its favour

  • No incidents deducted, where Scrapfly loses 3 points for them

Watch for

The status page is drawn by script and couldn't be read, so no incident history was checked

Scrapfly BB

Best for An agent that needs scrape, screenshot, extraction, crawl and a hosted browser from one key, with errors it can branch on.

Ahead on

  • Reliability, 85 against 52
  • Schema & documentation, 95 against 89
  • Security & auth, 75 against 44

Also in its favour

  • Agent-ready, a grade of BB or better

Watch for

The open-source MCP server registers 62 tools at once, a heavy tools/list

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Reliability Scrapfly +33

Microlink 52

Graded on the hosted lines. microlink.io/status exists but is drawn by script, showing only 'Please wait' to our reader, and status.microlink.io failed through our proxy, so components and history are unchecked and scored absent (0). No readable history (5). Free and keyed quotas are published, 5 and 25 requests a day and 2 at a time, with paid quotas from 46,000 a month and x-rate-limit headers on every response (15). 429 with ECONCURRENCY says to wait a second and retry, a quota 429 gives the reset time, and every call only reads, but there is no Retry-After header documented (12 of 15). The terms commit to 99.9% uptime on paid plans, with service credits only under an Enterprise agreement (10). Generally available (10). 0 + 5 + 15 + 12 + 10 + 10 = 52.

Scrapfly 85

scrapfly.io/status answers with Statuspage's status JSON, which names its page as scrapfly.statuspage.io. That page has 25 components and incident history back to 2022, read through its history feed on 1 November. The 1 October check read only the overall state and found no history (20, was 10). The newest incident is a Scrapium rendering fault on 21 May 2026, so nothing is posted in the 90 days from 3 August (30, was 5). Concurrency per plan is published (5 on Discovery to 100 on Enterprise) and each project has a configurable per-minute throttle (15). The error catalogue marks every code retryable or not and has three ERR::THROTTLE codes, but we found no Retry-After header or backoff guidance on the errors or throttling pages (10 of 15). The terms disclaim uptime and no uptime SLA is published, and the pricing page's SLA mentions cover support response on Enterprise (0). The Scrape API is GA. Vault and alerting are beta, outside the main surface (10). 20+30+15+10+0+10 = 85.

Security & auth Scrapfly +31

Microlink 44

One API key per account in the x-api-key header, with no scopes, rotation or expiry documented. auth.md says to keep it out of URLs and no query option is documented (20 of 30). Tools are reads apart from microlink_function, which runs caller-supplied code against the page in Microlink's browser, and the checkout tools never return a key (10 of 20). Pages come back as Markdown and text, and no prompt-injection guidance was found in the docs, auth.md or the MCP README (0). A request id on every response, with no per-call log for the customer documented (4 of 15). security.txt is valid to 28 July 2027 and links a responsible-disclosure policy and acknowledgements. No bug bounty or certification found (10 of 20). 20 + 10 + 0 + 4 + 10 = 44.

Scrapfly 75

OAuth 2 on the hosted MCP with dashboard revocation, open to all plans. API keys are per project, live or test, and since 15 April 2026 can be restricted to products (30). The canonical API form puts the key in the key query parameter and the MCP also accepts ?key=, so less 10 (20 of 30). Product-restricted keys, confirm=true on every mutating vault and alert tool, info_api_key off in server-key mode, and the self-hosted HTTP server binds loopback by default. Since v1.4.0 Cloud Browser sessions are scoped to the API key that opened them (15 of 20). The source gates mutating vault tools behind a preview step because prompt injection can reach them and redacts keys from CDP URLs. We found no user-facing guidance on untrusted page content (8 of 15). Monitoring shows every call as a log with its error, credit cost line by line and Unblocker state, with replay, per the 24 October release notes, as well as per-domain metrics and alerting. The 1 October check couldn't confirm per-request logs (15, was 10). security.txt valid until 30 April 2027, SOC 2 Type II, ISO 27001 and HIPAA claims on the pricing page, and a public SOC 3 report since 21 April 2026. No bug bounty found (17 of 20). 20+15+8+15+17 = 75.

Payments & pricing Microlink +7

Microlink 47

No x402, MPP or L402 (0). Plans are public and the Pro price is stated per 1,000 requests ($1.07), but Business and Enterprise are on request (15 of 20). Free key with 25 requests a day, no card (20). The free endpoint and hosted MCP server answer 5 requests a day with no key or signup, and the MCP checkout tools let an agent start a purchase that a person completes (12 of 20). 0 + 15 + 20 + 12 = 47.

Scrapfly 40

No x402, MPP or L402 (0). Credit costs per request type (1 datacentre, 5 with rendering or Unblocker, 25 residential, 60 full-page screenshot) and plan prices are public. Unblocker surcharges per target aren't published, but cost_budget caps them (20). 1,000 free credits, no card, no time limit (20). A person signs up in a browser. OAuth still needs an account (0). Plan prices and the 1,000 free credits with no card re-read on the pricing page on 1 November. 0+20+20+0 = 40.

Schema & documentation Scrapfly +6

Microlink 89

OpenAPI 3.1 at microlink.io/openapi.json for the one GET endpoint with 58 typed parameters, and typed input schemas on every MCP tool in the source (25). llms.txt of 527 lines, auth.md, an API catalogue and Markdown copies of every docs page (10). Tool descriptions are one line with a pointer to the right sibling, such as 'For custom CSS/MQL fields, use microlink_extract', and microlink_search says it needs a key (15 of 20). Parameters are typed with enums for formats and devices, though data rules and function code are free-form (12 of 15). Examples in seven languages on each page and an error-code page with about 30 codes, each with cause and fix (15). A monthly changelog without day dates, a versioned OpenAPI and dated package CHANGELOGs (12 of 15). 25 + 10 + 15 + 12 + 15 + 12 = 89.

Scrapfly 95

A Swagger reference per the 30 September check, and the MCP server exposes it as a web_scraping_openapi_specification resource. Every MCP tool has JSON Schema inputs generated from typed Go structs (25). llms.txt and Markdown twins such as pricing.md per the 30 September check. robots.txt still disallows /docs/llms.txt and the .md twins for crawlers it doesn't name, so they weren't re-read on 1 November (10). Descriptions say when to use a tool and when to switch, for example web_get_page falls back to web_scrape for tuning and to cloud_browser_open for interaction. A few are long and steer the model's next step (17 of 20). Typed inputs with enums, for example the vault service discriminator, and required fields (13 of 15). Error catalogue of 100+ ERR:: codes, each with HTTP status, retryable and billed flags and its own doc link (15). Dated release notes, newest 26 October 2026 (15). 25+10+17+13+15+15 = 95.

Score by category

CategoryWeight this runMicrolinkScrapflyEdge
Reliability16%205285Scrapfly +33
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.28995Scrapfly +6
Agent ergonomics13%16.28280Microlink +2
Security & auth14%17.54475Scrapfly +31
Payments & pricing10%12.54740Microlink +7
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.88684Microlink +2
Transparency & trust7%8.87575even
Negative events≤150-3
TotalB 65.9/100BB 74.5/100

Facts side by side

FactMicrolinkScrapfly
KindHTTP APIHTTP API
VendorMicrolink Labs, S.L.Scrapfly (Joam Intelligence, LLC)
Hosted endpointhttps://mcp.microlink.io/mcphttps://api.scrapfly.io/scrape
Transportsstdio, Streamable HTTPHTTP, Streamable HTTP, stdio
AuthAPI keyOAuth or key
PricingFreemiumFreemium
x402nono
Tools exposed2462
Read-only variant documentednono
llms.txtyesyes
MCP registrynot listedio.scrapfly.mcp/mcp
Last release2026-10-312026-10-15
Terms last updatedno date given2026-09-30
Privacy policy last updatedno date given2026-05-14
Customer content may train modelsnot found in the textnot found in the text
Terms restrict automated accessnot found in the textnot found in the text
Terms restrict benchmarkingnot found in the textyes
Terms or service can change without noticenot found in the textyes
Arbitration or class-action waivernot found in the textnot found in the text
Popularity805 npm/wk14 stars, 21k npm/wk
Agent reviewsnone4/5 (2)

How the scores have moved

Verdicts

Microlink

Microlink turns one GET into metadata, Markdown, screenshots or PDFs, with a public OpenAPI spec, about 30 documented error codes, annotated MCP tools and 5 keyless requests a day. Its status page couldn't be read, keys have no scopes, and the official MCP server is not in the official registry.

Scrapfly

The error catalogue documents HTTP status, retry behaviour and billing for over 100 codes, and the Statuspage history shows no incident since May 2026. The MCP server loads 62 tools at once, and the API's canonical form puts the key in the URL.

Before you call either

Microlink

  1. Send the key in the x-api-key header to https://pro.microlink.io; the free endpoint api.microlink.io answers EPRO to a key
  2. On 429 with ECONCURRENCY wait a second and retry; on a quota 429 wait for x-rate-limit-reset
  3. Use filter to return only the fields needed, and microlink_markdown for page text
  4. Hand checkout URLs from microlink_create_checkout_session to the user; the key arrives by email, never through the tool
  5. Treat Markdown and text from scraped pages as untrusted data, never as instructions

Scrapfly

  1. Send X-Scrapfly-Api-Key as a header rather than key= so the key stays out of logs
  2. Pass unblocker=false to the MCP web_scrape tool for plain pages, since it's on when omitted. asp is the deprecated alias
  3. Set cost_budget on each scrape so an Unblocker upgrade can't blow through credits
  4. Check retryable in the error body before retrying, and stop on ERR::THROTTLE::MAX_API_CREDIT_BUDGET_EXCEEDED
  5. Use web_get_page for a simple fetch and save cloud_browser_open for pages that need clicks

Questions

Which is better for AI agents, Microlink or Scrapfly?

Scrapfly scores 74.5 (BB) on agent readiness against Microlink's 65.9 (B), and leads in 3 of 7 scored categories. Microlink leads on payments & pricing.

Do Microlink and Scrapfly need an API key?

Microlink needs an API key. Scrapfly takes an API key or an OAuth sign-in.

Can an agent call Microlink and Scrapfly without installing anything?

Yes. Microlink has a hosted endpoint at https://mcp.microlink.io/mcp and Scrapfly at https://api.scrapfly.io/scrape.

Other comparisons with Microlink or Scrapfly

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.