The Web Scraping API That Doesn't Rip You Off.
Turn any website into LLM-ready markdown. Pay-per-use. Credits never expire. Zero data retention by default.
| Feature | BlazeCrawl | Firecrawl |
|---|---|---|
| Pay-per-use pricing | Yes | No β monthly tiers only |
| Credits roll over | Yes, forever | No β expire monthly |
| Zero data retention | Default for all | Enterprise only |
| Anti-bot stealth mode | Included free | Premium only |
| SDKs | Python, Node, Go, Rust, C#, PHP | Python, Node, Go, Rust only |
| Rate limit on free tier | 10 concurrent | 2 concurrent |
- POST
/api/v1/scrapeβ Scrape a single URL into markdown, HTML, or text - POST
/api/v1/crawlβ Crawl an entire website with depth/page limits - GET
/api/v1/crawl/:idβ Check crawl job status - POST
/api/v1/mapβ Discover all URLs on a site (free, no credits consumed) - POST
/api/v1/extractβ AI-powered structured data extraction using Claude
curl -X POST https://blazecrawl-dev.web.app/api/v1/scrape \
-H "Authorization: Bearer bc_live_xxx" \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com", "format": "markdown"}'See SELF_HOST.md for instructions on running BlazeCrawl on your own infrastructure.
# Quick start with Docker
cp .env.example .env
# Edit .env with your Firebase and Anthropic API keys
docker compose up- Frontend: Next.js 16 (App Router), Tailwind CSS
- Backend: Firebase Cloud Functions (Node.js 22), Express
- Database: Cloud Firestore
- Auth: Firebase Auth (Email/Password + Google OAuth)
- AI: Anthropic Claude (for Extract API)
- Scraping: JSDOM, Readability, Turndown
blazecrawl/
βββ src/
β βββ app/
β β βββ page.tsx # Landing page
β β βββ login/page.tsx # Auth page
β β βββ dashboard/ # Dashboard (API keys, usage, playground)
β β βββ docs/page.tsx # API documentation
β β βββ api/v1/ # Next.js API routes (local dev)
β βββ lib/ # Firebase config, auth, scraper utilities
βββ functions/
β βββ index.ts # Cloud Functions API (production)
βββ firebase.json # Firebase hosting + functions config
βββ firestore.rules # Security rules
βββ .env.example # Environment variable template
Copy .env.example and fill in your values:
cp .env.example .env.localRequired variables:
NEXT_PUBLIC_FIREBASE_*β Firebase client SDK configANTHROPIC_API_KEYβ For the Extract API endpoint
| Plan | Price | Pages/month | Concurrent |
|---|---|---|---|
| Free | $0 | 1,000 | 10 |
| Pro | $29/mo | 50,000 | 100 |
| Scale | $99/mo | Unlimited | 500 |
All tiers: credits never expire, zero data retention, full API access.
We welcome contributions! Please open an issue or submit a pull request.
AGPL-3.0 β See LICENSE for details.