Comparison
Crawl4AI vs Firecrawl (2026): Self-Hosted or Managed?
Crawl4AI vs Firecrawl: compare both clouds and self-hosts, pricing at 10K–1M pages, licenses and operating costs. Verified 31 Oct 2026.

You’ve narrowed your crawler for RAG or an agent down to Crawl4AI or Firecrawl. The real question is whether to run the browsers yourself for free or pay per page for someone else to run them.
It’s actually four options, because each one now comes in both flavors: Crawl4AI’s open-source library or its new Cloud, and Firecrawl’s Cloud or its AGPL self-host. Below I price all four at three volumes and compare their licenses. It’s part of my guide to crawl APIs.
Short answer: Crawl4AI is the cheaper pick if you’re a Python team crawling mostly unprotected pages and you’ll patch your own server. Firecrawl Cloud is the better pick if your sites fight back, you work in other languages, or you’d rather pay per page than run browsers.
Short on time?
Here's my take, by option
- Free, and you have ops time
- Crawl4AI open source
- Apache-2.0 (with an attribution requirement), a Python library or one Docker container, and any LLM you like for extraction. You pay for servers and keep up with its frequent 2026 security releases.
- Managed, simple pages, lower volume
- Crawl4AI Cloud
- Starter costs $10 for up to 20,000 plain pages in its allowance. Current plans can also undercut Firecrawl at 1M plain pages; browser and hard pages use 2 and 4 times the plain-page credits. Soft-launch prices can change.
- Hard sites, 100K+ pages, least ops
- Firecrawl Cloud
- $99 for 100,000 pages, managed browsers with Fire-engine, official SDKs, and robots.txt respected by default. JSON extraction multiplies the credits per page by five.
- Rarely the right pick
- Firecrawl self-host
- AGPL-3.0, and Firecrawl's own docs say it lacks Fire-engine, screenshots, page actions and Agent. Firecrawl itself recommends starting with Cloud.
Prices verified . List prices verified 31 Oct 2026. Self-host costs are my estimate from sourced inputs, not a quote.
Crawl4AI vs Firecrawl at a glance #
Crawl4AI’s core is an open-source Python library, and Firecrawl’s main product is a hosted API. Both now come in the other form too, so here are all four options side by side.
| Feature | Crawl4AI open source | Crawl4AI Cloud | Firecrawl Cloud | Firecrawl self-host |
|---|---|---|---|---|
| What it is | Python 3.10+ library, plus an optional Docker REST server | Hosted API, EU, SG and US regions | Hosted API | Docker Compose stack you run |
| License or terms | Apache-2.0 plus an attribution requirement | Cloud terms dated 20 Apr 2026, Singapore law | Hosted service on paid plans | AGPL-3.0; SDKs MIT |
| What you pay for | Your servers, proxies and LLM tokens | Monthly plans $10/10K, $99/125K, $499/750K credits; plain/browser/hard 0.5/1/2 | 1 credit per basic page; plans from $19/mo | Your servers, proxies and LLM tokens |
| JS rendering | Playwright: Chromium by default, Firefox or WebKit | Picks cache, plain HTTP or a real browser automatically, per domain | Managed headless browsers | Bundled Playwright with a basic fetch fallback |
| Crawl and discovery | BFS, DFS and BestFirst deep crawl | /site: up to 500 pages and depth 5 per job; /scan: up to 50,000 URLs; batches 50, URL-list jobs 10,000 | /crawl, /map and /search | /crawl and /map |
| LLM extraction | Any LiteLLM model or local Ollama; your tokens | /extract (Gemini 3.1 Flash-Lite; token rate unverified) | JSON format at +4 credits a page | Your own OpenAI-compatible or Ollama model |
| Anti-bot and proxies | Stealth options off by default; bring your own proxies | Proxy options: none, ISP or residential, by country | Fire-engine; enhanced proxy with no surcharge | No Fire-engine or advanced anti-bot |
| Screenshots | Screenshot and PDF | Not listed | Screenshot format | Not in self-host |
| robots.txt by default | Not checked (check_robots_txt is False) | Unverified | Respected; ignoring it is Enterprise only | Unverified |
| SDKs and MCP | Python; REST from any language; MCP over SSE or WebSocket | REST; MCP at api.crawl4ai.com/mcp; no official Cloud SDK documented | Official SDKs, a CLI and an MCP server | Same SDKs, pointed at your server |
| GitHub activity | v0.9.5 released 14 Oct 2026; stars are not a quality metric | Launch date unverified | Public core repo and changelog; issue counts are not a quality metric | Same repo as Cloud |
Source: Crawl4AI's GitHub README, docs and Cloud price API; Firecrawl's GitHub repo, docs and pricing page. All rechecked 31 Oct 2026. A dash means I couldn't confirm it. Scroll sideways for more columns.
How hard is each one to set up and host? #
Crawl4AI is a pip install or a single Docker container. Firecrawl’s self-host is a multi-service Docker Compose stack with features missing, which is a big part of why I rarely recommend it.

Crawl4AI: a pip install or one Docker container #
The library needs Python 3.10 or newer and drives its browsers through Playwright (PyPI). Its README installs it with pip install -U crawl4ai, then crawl4ai-setup to install the browser, with python -m playwright install --with-deps chromium as the manual fallback.
The Docker server runs on port 11235 and exposes REST endpoints including /md, /html, /crawl, /crawl/stream, /screenshot, /pdf and /execute_js, plus a dashboard and a playground. That’s how you call it from a language other than Python.
Its self-hosting docs ask for “At least 4GB of RAM available for the container” and --shm-size=1g. Their sample memory-monitor output is not a capacity guarantee; size and load-test your deployment separately.
Firecrawl self-host: services and missing features #
Firecrawl’s self-host docs describe the core api, playwright-service, redis, rabbitmq and postgres services. The current repository guide, checked 31 October, also describes optional FoundationDB services for its alternative queue backend; the five-service illustration above is the baseline. They publish no minimum host size, only that Docker needs “enough capacity to build and run several services”.
The default setup has authentication off on first run, no TLS, and a warning: “Do not expose this unauthenticated baseline publicly”. The same page lists what self-hosting lacks: Fire-engine and its advanced anti-bot behavior, screenshots and page actions, and the Agent, Browser and interact features.
For AI extraction, SELF_HOST.md says there’s “no model provider”, so you connect OpenAI, an OpenAI-compatible endpoint or Ollama. Firecrawl’s open source or cloud page is blunt about it: “start with Firecrawl Cloud unless source access or infrastructure control is worth the operational work.”
Who patches, scales and monitors it? #
Whichever you self-host, you do. Firecrawl’s SELF_HOST.md puts it plainly: “You also own security, availability, capacity, upgrades, data retention, and compliance.”
That matters more than usual for Crawl4AI’s server this year. Its CHANGELOG shows a run of security releases in 2026:
- v0.8.7 (1 Jun): remote code execution fixes, including a “hardcoded JWT secret”.
- v0.8.8 and v0.8.9 (4 Jun): SSRF fixes.
- v0.9.0 (18 Jun): “secure-by-default”, with authentication on by default.
- v0.9.3 (31 Aug): five security advisories and 33 fixes.
- v0.9.4 (23 Sep): closes SSRF and trust-boundary advisories.
- v0.9.5 (14 Oct): closes six advisories in how the Docker server handles untrusted request bodies, covering SSRF, JavaScript injection, model loading, regular expressions, delays and Chromium certificate verification. This is the current release on PyPI and GitHub as checked 31 October.
I read this as a project fixing problems in the open, which is a good sign. It also means a Crawl4AI server you set up in May and never touched would be missing all of it, so budget time for upgrades. Since v0.9.0, the server binds to loopback inside its container unless you set CRAWL4AI_API_TOKEN (docs).
Do they respect robots.txt? The defaults are opposite #
Crawl4AI’s check_robots_txt defaults to False (parameters), and its deep-crawl docs list respecting robots.txt as “disabled by default”. Firecrawl’s crawl docs say “robots.txt is respected unless ignoreRobotsTxt is enabled”, and that option is “Enterprise only”.
With Crawl4AI, respecting a site’s robots.txt is a setting you turn on yourself. Crawl4AI Cloud’s terms separately forbid crawling “in violation of the target website’s terms of service”.
What does each option cost at 10K, 100K and 1M pages? #
For known URLs that stay on the plain-page engine, Crawl4AI Cloud models lower than Firecrawl at all three volumes below. Browser and hard-page workloads change that comparison. Self-hosting adds server, proxy and maintenance costs.
Monthly cost for basic pages, four options
Verified
| Plan | How you pay | 10K pages/mo | 100K pages/mo | 1M pages/mo |
|---|---|---|---|---|
| Crawl4AI open source (estimate) | Free software + your infra | ≈$48 for one VM, + scenario ≈$157 for proxies | $48 per VM, VM count unknown; + scenario ≈$1,570 for proxies | VM count unknown; + scenario ≈$15,700 for proxies |
| Crawl4AI Cloud | Monthly subscription + consumed extra credits | $10 / $10 / $20 | $50 / $99 / $158.25 | $395.25 / $666.50 / $1,336.50 |
| Firecrawl Cloud | 1 credit per basic page | ≈$44 (Hobby $19 + $25 extra credits) | $99 (Standard; $83 billed annually) | $749 (Scale; $599 billed annually) |
| Firecrawl self-host (estimate) | Free software + your infra | ≈$48 for one VM, + proxies as above; no minimum size published | VM count unknown; + proxies | VM count unknown; + proxies |
Source: Crawl4AI Cloud price API, Firecrawl pricing (Markdown version), DigitalOcean and Bright Data pricing pages, HTTP Archive Web Almanac 2025, Crawl4AI models plain/browser/hard pages at 0.5/1/2 credits before free credits, using current monthly plans and consumed extra-credit rates. It excludes scan/site job overhead and cash-purchase timing; top-ups start at $10. Self-host figures are scenarios, not measured capacity or upper bounds. Cloud pricing rechecked 31 Oct 2026.
Here’s where each Cloud number comes from:
-
Crawl4AI Cloud: the current price API and homepage, checked 31 October 2026, list Starter $10/10,000 credits, Builder $99/125,000 and Scale $499/750,000, with extras at $1/$0.79/$0.67 per 1,000 credits. Plain/browser/hard pages use 0.5/1/2 credits. For example, 1M plain pages use 500,000 credits: Builder $99 + 375 × $0.79 = $395.25 in modeled consumption.
The API also lists monthly usage caps of 50,000/500,000/2M credits. A /site crawl adds one job unit and /scan adds discovery usage; these rows model known-URL reads. Top-ups start at $10, so cash charged in a month can exceed consumed usage.
-
Firecrawl Cloud: from its pricing page, checked 31 Oct 2026 alongside the HTML version. The HTML page labels these prices “Effective September 4, 2026”, and that label was still there on 31 October with every plan price unchanged. My 27 September notes recorded the annual option as “billed yearly”; on 31 October the plan cards say “billed annually”. At 10K I added 5,000 extra credits to Hobby at $5 per 1,000, which beats jumping to the $99 Standard plan. At 1M, Scale is cheaper than Growth plus extra credits.

My Firecrawl pricing breakdown covers every plan, rollover rule and credit cost in detail.
The self-host estimate, and what’s in it #
This is an estimate I built from list prices. None of the numbers below come from running either tool.
- Server: a DigitalOcean Basic droplet with 8 GiB and 4 vCPU at $48 a month (pricing). I picked 8 GiB because Crawl4AI’s container alone needs at least 4 GB; that choice is my assumption.
- How many servers: unknown. I found no independent figure for pages per hour on one server, so I won’t guess how many VMs 100K or 1M pages need.
- Proxies, only if your targets block you: Bright Data residential at $8/GB regular, or $4/GB on its advertised coupon price (eligibility untested) (pricing). I multiplied that by the median inner-page weight of 1,963 KB on desktop from the HTTP Archive Web Almanac 2025, which gives about 19.6 GB per 10,000 pages: $157 at the regular rate, $78 at the promo.
- Why this is a scenario: it assumes every page uses a residential proxy and downloads the selected median weight. Heavier pages, retries or different metering can cost more; filtering assets can cost less. A median does not establish an upper bound.
- LLM tokens: your provider’s rates, not priced here.
- Your time: no sourced figure exists for maintenance hours.
My read: if your pages are mostly docs, blogs and other sites that don’t block crawlers, self-hosting is mostly a server bill. Firecrawl’s $749 Scale price would pay for about 15 of those $48 servers.
If most of your pages need residential proxies, it flips. That proxy scenario passes $749 before you reach 100K pages, while Firecrawl’s billing docs list enhanced proxy with no surcharge.
What changes the math #
- JSON extraction on Firecrawl: +4 credits a page, so 5 in total (billing). 100K pages becomes 500K credits, which is the Growth plan at $399 a month ($333 billed annually).
- LLM extraction on Crawl4AI: the open-source library works with “Any model that LiteLLM supports”, including local Ollama models, and you pay the tokens (docs). The docs also warn that “LLM-based extraction can be slower and costlier than schema-based approaches”.
- Failed pages: on Firecrawl, ordinary no-document failures are free, but returned 403/404 documents cost the base credit plus modifiers. Safety checks, monitor checks and browser sessions have documented billing exceptions (pricing). Crawl4AI Cloud’s docs say a 403 “blocked” response is not charged.
- Unused credits: Firecrawl pricing and billing docs disagree about whether Scale rollover requires annual billing. Crawl4AI now explicitly says monthly plan credits expire each month while bought extra credits never expire (Cloud docs, checked 31 October 2026).
- Concurrency: Firecrawl self-serve plans allow 2–100 concurrent browsers. Crawl4AI advertises 2 on Free, 10 on Starter, 20 on Builder and 50 on Scale, with 10/120/600/1,500 requests per minute respectively (homepage, checked 31 October 2026).
Crawl4AI Cloud changed its pricing
The current homepage and price API use monthly subscriptions. The screenshot above is a historical 27 September capture of earlier packs. The vendor calls this a soft launch; prices and free credits can change. I have not verified billing in an owner account.
Which one produces better Markdown? Evidence I can inspect #
I have not measured either tool’s output, so I withhold a quality or speed ranking. The published vendor comparisons below do not supply a fair, reproducible basis for one.
- Spider’s comparison defines success as an HTTP 200 response with a non-empty body. That does not establish Markdown fidelity, and I could not inspect a public per-URL result set.
- fastCRW’s canonical benchmark page links a result-of-record file, but that artifact returned 404 through both the raw URL and GitHub contents API on 15 October, and its GitHub page still returned 404 on 31 October. I am withholding its numerical rankings because I cannot audit the recorded run or configuration.
- Firecrawl’s own comparison supplies vendor claims rather than a measured head-to-head I reproduced. It also still describes Crawl4AI Cloud as a closed beta without public pricing, contrary to Crawl4AI’s current homepage and price API.
Choose from documented controls and a permitted sample of your own target pages. These pages do not establish which current hosted service produces better Markdown.
What GitHub issues say about Markdown quality #
Both trackers have Markdown bug reports worth knowing about before you pick:
- Crawl4AI #1964 (opened 11 May 2026, open): “Markdown export loses heading hierarchy and table structure”.
- Crawl4AI #2110 (30 Jul 2026, open): its PruningContentFilter drops whitespace-only spans inside pre and code blocks, which matters if you crawl code docs.
- Firecrawl #3968 (8 Jul 2026, open): “Cached PDF scrape returns markdown for a different URL”.
- Firecrawl #4046 (opened 16 Jul 2026; closed as not planned 17 Oct 2026): the Go html-to-markdown converter “has no timeout”, so hung conversions can block scrape workers.
For how Markdown output differs across more tools than these two, see my guide to turning websites into Markdown for LLMs.
My own check is planned, not done
I haven’t measured either tool’s output myself yet. A small-sample lab check on test pages with known content is planned as a later update to this post, and its raw data will go on my evidence page.
Apache-2.0 vs AGPL-3.0: what the licenses say #
Crawl4AI’s license is Apache-2.0 with an added attribution requirement, while Firecrawl’s self-host code is AGPL-3.0. The AGPL’s network clause is about modified versions offered to users over a network, not about calling Firecrawl’s hosted API. If you’re weighing other tools too, I list the licenses of other markdown converters in a separate guide.
Crawl4AI: Apache 2.0 with an attribution requirement #
Crawl4AI’s LICENSE file is Apache 2.0 with an added section headed “Attribution Requirement”. It says “All distributions, publications, or public uses of this software, or derivative works… must include the following attribution”, which begins “This product includes software developed by UncleCode”.
The README and LICENSE use different wording about attribution. I rely on the LICENSE’s explicit requirement rather than treating attribution as optional.
Firecrawl: AGPL-3.0, with MIT SDKs #
Firecrawl’s repo is AGPL-3.0, and “The SDKs and some UI components are licensed under the MIT License”. The key clause is section 13 of the license: “if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network… an opportunity to receive the Corresponding Source”.
That clause is written about modified versions that users reach over a network. If you only call Firecrawl Cloud, the code on your side is the MIT-licensed SDK.
Not legal advice
I rechecked both license files on 31 Oct 2026. If the license decides your choice, have a lawyer read it against how you plan to ship.
What do Reddit, Hacker News and GitHub users report? #
The pattern I found most often is using both: Crawl4AI for the bulk, Firecrawl for the pages it can’t get. The complaints are mostly about self-hosting, on both sides.
A Reddit thread on r/LLMDevs, a “Firecrawl vs Crawl4AI cheatsheet”, ranks for this search. Reddit was unreachable from my research tools, so I haven’t read it and won’t guess what it says.
On Hacker News, one commenter runs Crawl4AI at home and keeps hosted Firecrawl as a paid fallback (December 2025 comment). An April 2026 comment claimed both tools missed shadow DOM. That is a historical report: current Crawl4AI parameters document flatten_shadow_dom, so I would not repeat it as a current limitation.
GitHub issues show recurring themes for each project:
- Firecrawl self-host breakage: #902 “[Self-Host] call to playwright is failing” (Nov 2024, 34 comments) and #2111 “Firecrawl container won’t even start” (Sep 2025).
- Firecrawl self-host on blocked sites: #2350 reports the crawler “stuck in an infinite loop” when blocked by anti-bot (opened Nov 2025; closed as not planned Jun 2026).
- Crawl4AI memory and browsers: #1256 “Memory Leak on Repeated /md Requests via Docker” (Jun 2025, still open; report used v0.6.0-r2) and #842 “Target page, context or browser has been closed” (Mar 2025, 36 comments).
- Crawl4AI Docker friction: #1052 “Cannot Perform Deep Crawling via Docker” (Apr 2025).
- From the site owner’s side: Firecrawl #1169 asks for “an identifiable user agent so that I can prevent it from crawling my site” (Feb 2025, still open).
Crawl4AI or Firecrawl: which should you pick? #
Pick Crawl4AI if you’re a Python team crawling mostly unprotected pages and you’ll patch a server. Pick Firecrawl Cloud if your sites fight back, you need other languages, or you’d rather pay than run browsers.
What stands out about Crawl4AI
- Free Apache-2.0 library with an added attribution requirement and a Docker REST server
- Bring any LiteLLM model or a local Ollama model for extraction
- Crawl4AI Cloud Starter is $10 for 10,000 credits, enough for 20,000 plain pages
- Screenshots and PDFs in the open-source version
What gives me pause about Crawl4AI
- You own patching: a run of security releases from June to October 2026
- robots.txt checking is off by default, so compliance is on you
- Open memory-leak report concerns old v0.6.0-r2 Docker; not a verified current-version defect
- Cloud is new, and its launch pricing may change
What stands out about Firecrawl
- Managed browsers with Fire-engine, and enhanced proxy at no extra charge
- $99 a month for 100,000 basic pages, $749 for 1M
- Official SDKs, a CLI and an MCP server
- robots.txt respected by default
What gives me pause about Firecrawl
- JSON extraction costs 5 credits a page, five times a basic page
- Plan credits don't roll over below Scale, and 403 or 404 pages still cost a credit
- Self-host is AGPL-3.0 and lacks Fire-engine, screenshots, actions and Agent
- Self-host has a history of setup-breakage issues on GitHub
By scenario:
- Solo developer, a few thousand doc pages for RAG: Crawl4AI Cloud’s free credit may cover you, and the open-source library costs nothing if you’d rather run it locally.
- RAG on 100K docs or blog pages a month: consider Crawl4AI open source if your team will size, test and patch it; I have not established how many servers that volume needs. Firecrawl Standard lists $99 for 100K basic pages.
- Agent that hits e-commerce or other protected sites: Firecrawl Cloud. You’d otherwise be building the proxy layer yourself, and my illustrative proxy estimate passes Firecrawl’s price quickly.
- 1M known URLs a month: compare engine mix. Crawl4AI models $395.25 for plain pages, $666.50 for browser pages or $1,336.50 for hard pages, before cash top-up timing and discovery jobs. Firecrawl Scale is $749 monthly for basic scrape/crawl output, with enhanced proxy at no extra page credits. These are list-price scenarios, not observed invoices or success comparisons.
- Structured JSON from every page: price it both ways. Firecrawl charges 5 credits a page, while Crawl4AI lets you pick a cheap or local model and pay only its tokens.
- You need Firecrawl’s API on your own servers: Firecrawl self-host, knowing it lacks Fire-engine and screenshots, and reading the AGPL first.
If I were building a RAG pipeline on documentation sites today, I’d start with Crawl4AI open source and keep a Firecrawl Cloud key for the pages that block me. That’s the same split the Hacker News commenter above describes, and it keeps the per-page bill for the pages that need it.
If neither fits, my Firecrawl alternatives guide sorts other ways off Firecrawl, by reason for leaving. If you only need single URLs turned into Markdown, Firecrawl vs Jina Reader compares a lighter tool. If your agent needs search results or cited answers rather than pages you pick, start with Firecrawl vs Tavily, which also covers whether Perplexity is the same as Firecrawl. If you’re weighing a scraping platform instead of an API, see how Firecrawl compares with Apify.
FAQ
Is Crawl4AI free?
The library is free under Apache-2.0, with an added requirement to credit the project. You still pay for the servers it runs on, any proxies, and the tokens of whatever LLM you use for extraction.
Crawl4AI Cloud now gives 20 guest credits and 1,000 credits a month after email verification. Starter is $10 for 10,000 monthly credits; Builder $99 for 125,000; Scale $499 for 750,000. A plain page uses 0.5 credit, a browser page 1 and a hard page 2 (public homepage and price API checked 31 October 2026). These are soft-launch prices.
Does Crawl4AI use Playwright?
Yes. Its README gives python -m playwright install --with-deps chromium as the manual browser-install step, and PyPI lists Playwright as a dependency.
It uses Chromium by default, and its browser settings also accept Firefox and WebKit.
How much does Firecrawl cost?
Firecrawl's free plan gives 1,000 credits a month. Paid plans start with Hobby at $19 a month ($16 billed annually) for 5,000 credits, and a basic page costs 1 credit. Adding JSON extraction costs 4 more credits per page.
Firecrawl's pricing page labels these prices "Effective September 4, 2026", and the label was still there on 31 Oct 2026 with every plan price unchanged. My Firecrawl pricing guide breaks down every plan.
Is Perplexity the same as Firecrawl?
No. Perplexity's API returns cited answers and search results, while Firecrawl fetches pages you choose and turns them into Markdown or JSON; my Firecrawl vs Tavily vs Exa comparison covers that split.
Sources
44 sources, accessed .
Official pricing, docs, changelogs and status pages 21
- Crawl4AI on PyPI
- Crawl4AI documentation home and Cloud banner
- Crawl4AI docs: self-hosting (RAM, browser pool, auth)
- Crawl4AI docs: browser and crawler parameters
- Crawl4AI docs: deep crawling
- Crawl4AI docs: LLM extraction strategies
- Crawl4AI Cloud homepage and pricing
- Crawl4AI Cloud live price API (plans, metering and limits)
- Crawl4AI Cloud API docs
- Crawl4AI Cloud terms of service
- Firecrawl pricing (Markdown version)
- Firecrawl pricing page (HTML version)
- Firecrawl docs: billing and credits
- Firecrawl docs: self-hosting
- Firecrawl docs: open source or cloud
- Firecrawl docs: crawl (limits, robots.txt)
- Firecrawl changelog
- Firecrawl's own Firecrawl vs Crawl4AI page (vendor)
- DigitalOcean Droplet pricing
- Bright Data residential proxy pricing
- Perplexity API docs
GitHub code, issues and releases 18
- Crawl4AI on GitHub (README, install, Docker server, stars)
- Crawl4AI LICENSE (Apache 2.0 plus Attribution Requirement)
- Crawl4AI CHANGELOG (2026 security releases)
- Crawl4AI releases
- Firecrawl on GitHub (license, SDKs, stars)
- Firecrawl LICENSE (GNU AGPL v3)
- Firecrawl SELF_HOST.md
- Crawl4AI issue #1964: Markdown loses heading hierarchy and tables
- Crawl4AI issue #2110: PruningContentFilter drops code whitespace
- Crawl4AI issue #1256: memory leak on repeated /md requests
- Crawl4AI issue #842: target page, context or browser closed
- Crawl4AI issue #1052: deep crawling via Docker
- Firecrawl issue #3968: cached PDF returns another URL's Markdown
- Firecrawl issue #4046: Markdown converter has no timeout
- Firecrawl issue #902: self-host call to Playwright failing
- Firecrawl issue #2111: container won't start
- Firecrawl issue #2350: permanent loop when blocked by anti-bot
- Firecrawl issue #1169: request for an identifiable user agent


