All systems operationalโ€ขIP pool status
Coronium Mobile Proxies
AI Scraping
LangChain Ready
4G Mobile
Updated April 2026

Firecrawl Proxy Setup with Mobile IPs in 2026

Firecrawl raised $14.5M Series A from Nexus Venture Partners, Shopify CEO Tobias Lรผtke and Y Combinator in August 2025, powering 350,000+ developers at Shopify, Zapier and Replit. This guide shows you exactly how to pair it with Coronium 4G mobile proxies for 97%+ success on the hardest targets on the web.

$14.5M
Series A (Aug 2025)
350K+
Active developers
500
Free credits
97.4%
Mobile proxy trust
What Is Firecrawl

The AI-Native Scraping API

Firecrawl converts any URL into clean, LLM-ready markdown and structured JSON with a single HTTP call โ€” purpose-built for AI agents, RAG pipelines, and autonomous research systems.

Built for AI Agents

Every response is pre-cleaned: navigation, cookie banners, ads and tracking scripts are stripped. What arrives at your LLM is tokenisable markdown ready for ChatGPT, Claude, Gemini or Llama 3.3.

  • JS rendering via Playwright on every request
  • Built-in PDF and image OCR on Enterprise
  • Natural-language /extract with schema validation
  • LangChain + LlamaIndex first-party loaders

Fortune 500 Trusted

Backed by Nexus Venture Partners and Shopify CEO Tobias Lรผtke, Firecrawl powers data pipelines at Shopify, Zapier, Replit, and hundreds of AI-first startups shipping agents in 2026.

  • $16.2M total raised across seed + Series A
  • Y Combinator alumni (W24 batch)
  • Viral May 2025 $1M role to "hire AI agents"
  • Firecrawl v2 released alongside funding
/scrape
Single URL to markdown
/crawl
Full site recursive
/map
URL tree of a site
/search
Live web search
/extract
LLM structured JSON
Pricing Math

Firecrawl v2 Pricing Breakdown

Firecrawl sells credits, not requests. Understanding credit consumption is the single biggest cost-lever in 2026.

PlanPrice/moCreditsConcurrencyCost / 1K basic pagesCost / 1K extract
Free$0500 one-time2$0.00N/A (55 pages)
Hobby$163,0005$5.33$48.00
Standard$83100,00050$0.83$7.47
Growth$333500,000100$0.67$6.00
Enterprise$1.5K+Custom + BYOPCustom~$0.30~$2.70
1
credit
Basic /scrape
1
credit
Search result
5
credits
Page interaction
9
credits
JSON /extract

Hidden cost: failed requests

Firecrawl refunds credits on 4xx/5xx responses, but it still counts your time and blocks your concurrency slot. On hardened targets (Instagram, TikTok, Cloudflare Enterprise) the built-in pool fails 50-70% of requests โ€” meaning you burn quota trying. Routing through Coronium 4G mobile IPs pushes success above 97%, giving you 2.3x effective credit efficiency.

Why Mobile

Why Add Mobile Proxies to Firecrawl

Firecrawl gets you 80% of the web for free. Coronium 4G proxies get you the other 20% โ€” the valuable, hardened, anti-bot-protected targets where AI agents earn their keep.

April 2026 Success-Rate Benchmark (50,000 pages per target)

Instagram public profiles
Default 18%
Residential 54%
Coronium 4G 96%
TikTok trending feed
Default 22%
Residential 61%
Coronium 4G 98%
Amazon product pages
Default 47%
Residential 72%
Coronium 4G 99%
LinkedIn company pages
Default 8%
Residential 31%
Coronium 4G 92%
Cloudflare Enterprise WAF
Default 11%
Residential 38%
Coronium 4G 94%
Ticketmaster events
Default 3%
Residential 24%
Coronium 4G 89%

CGNAT Trust Shield

Mobile carriers NAT thousands of real subscribers behind every IPv4. Blocking one means blocking paying customers โ€” platforms simply will not do it.

Account Isolation

Assign one mobile IP per scraped account or session. Firecrawl jobs that touch authenticated endpoints stop triggering cross-session fingerprint flags.

Cloudflare Bypass

Combined with Firecrawl v2 stealth Chromium, Coronium mobile IPs clear Turnstile, Bot Fight Mode and most Enterprise WAF policies out of the box.

Lower Effective Cost

At 97.4% success you consume 2.3x fewer credits on hardened targets than the built-in pool โ€” mobile proxies pay for themselves on Standard tier and up.

On-Demand Rotation

HTTPS-triggered IP rotation per port lets you rotate every request, every N pages, or on 403/429 โ€” all controlled from your Firecrawl job config.

Geo-Targeting

Choose exact carrier and city. Scrape localised pricing, region-gated content or geo-fenced campaigns that datacenter IPs cannot see.

BYOP Configuration

Bring Your Own Proxy Setup

Three integration paths depending on whether you run hosted Firecrawl, self-hosted, or a hybrid forwarder pattern.

01

Self-Hosted Docker

Cleanest path. Env vars PROXY_SERVER / PROXY_USERNAME / PROXY_PASSWORD map straight into Playwright.

02

Enterprise BYOP

Native BYOP flag in job config. Firecrawl hosted infra routes every request through your Coronium IP pool.

03

Hybrid Forwarder

Thin FastAPI or Cloudflare Worker in front of Firecrawl โ€” rewrites egress through mobile IPs on any tier.

docker-compose.yml โ€” self-hosted Firecrawl v2 with Coronium

bash
version: "3.9"
services:
  firecrawl-api:
    image: firecrawl/firecrawl:v2.3.1
    ports:
      - "3002:3002"
    environment:
      # --- Coronium 4G BYOP ---
      PROXY_SERVER: "https://proxy.coronium.io:8000"
      PROXY_USERNAME: "${CORONIUM_USER}"
      PROXY_PASSWORD: "${CORONIUM_PASS}"
      PROXY_ROTATE_URL: "https://coronium.io/api/rotate?key=${CORONIUM_KEY}"
      # --- Firecrawl core ---
      REDIS_URL: "redis://redis:6379"
      PLAYWRIGHT_MICROSERVICE_URL: "http://playwright:3003"
      USE_DB_AUTHENTICATION: "false"
      TEST_API_KEY: "fc-local-dev-key"
    depends_on: [redis, playwright]

  playwright:
    image: firecrawl/playwright-service:latest
    environment:
      PROXY_SERVER: "${PROXY_SERVER}"
      PROXY_USERNAME: "${PROXY_USERNAME}"
      PROXY_PASSWORD: "${PROXY_PASSWORD}"
    ports:
      - "3003:3003"

  redis:
    image: redis:7-alpine
    ports: ["6379:6379"]

Python โ€” /scrape with Coronium mobile proxy

python
from firecrawl import FirecrawlApp
import os, requests

# Self-hosted Firecrawl already configured with Coronium via docker-compose.
app = FirecrawlApp(
    api_key="fc-local-dev-key",
    api_url="http://localhost:3002",
)

# Rotate IP before a sensitive target
requests.get(f"https://coronium.io/api/rotate?key={os.environ['CORONIUM_KEY']}")

result = app.scrape_url(
    "https://www.instagram.com/shopify/",
    params={
        "formats": ["markdown", "html"],
        "waitFor": 3500,
        "onlyMainContent": True,
        "timeout": 30000,
        "headers": {
            "Accept-Language": "en-US,en;q=0.9",
            "X-Coronium-Session": "shopify-scrape-042026",
        },
    },
)

print(f"Success: {result['success']}")
print(f"Credits used: {result['metadata']['creditsUsed']}")
print(result["markdown"][:500])

REST โ€” /crawl a full domain with rotation

curl
# Kick off a full-site crawl, 500 pages, rotate every 25
curl -X POST https://api.firecrawl.dev/v2/crawl \
  -H "Authorization: Bearer $FIRECRAWL_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://shop.example.com",
    "limit": 500,
    "scrapeOptions": {
      "formats": ["markdown"],
      "onlyMainContent": true,
      "headers": {
        "X-Proxy-Pool": "coronium-4g-us-east",
        "X-Rotate-Every": "25"
      }
    },
    "includePaths": ["/products/*", "/collections/*"],
    "excludePaths": ["/account/*", "/cart"],
    "maxDepth": 5
  }'

# Poll the crawl job
curl https://api.firecrawl.dev/v2/crawl/$JOB_ID \
  -H "Authorization: Bearer $FIRECRAWL_KEY"

Node.js โ€” /extract with LLM schema

typescript
import FirecrawlApp from "@mendable/firecrawl-js";
import { z } from "zod";

const firecrawl = new FirecrawlApp({
  apiKey: process.env.FIRECRAWL_KEY!,
  apiUrl: "http://localhost:3002", // self-hosted + Coronium
});

const ProductSchema = z.object({
  title: z.string(),
  price: z.number(),
  currency: z.string(),
  inStock: z.boolean(),
  rating: z.number().optional(),
  reviewCount: z.number().optional(),
});

const result = await firecrawl.extract({
  urls: [
    "https://www.amazon.com/dp/B0D7HWDQFX",
    "https://www.amazon.com/dp/B0C7BZ3DVQ",
  ],
  prompt: "Extract the product title, price, currency, stock status, rating and review count.",
  schema: ProductSchema,
  enableWebSearch: false,
  // Coronium mobile IPs route transparently via the forwarder
});

console.log(result.data);
// [{ title: "...", price: 1299, currency: "USD", inStock: true, ... }]
LangChain

LangChain Integration

The FirecrawlLoader ships first-party inside langchain_community. Five lines of Python take you from URL to embedding-ready documents.

FirecrawlLoader modes

  • scrape
    Single URL returned as one Document
  • crawl
    Full site walked recursively, one Document per page
  • map
    URL tree returned as a single document โ€” cheap + fast

Downstream vector stores

  • Chroma (local + Chroma Cloud)
  • Pinecone (serverless + pod)
  • Weaviate (OSS + Cloud)
  • pgvector / Supabase
  • Qdrant, Milvus, LanceDB

LangChain 0.3+ โ€” Firecrawl via Coronium to pgvector RAG

from langchain_community.document_loaders.firecrawl import FirecrawlLoader
from langchain_text_splitters import RecursiveCharacterTextSplitter
from langchain_openai import OpenAIEmbeddings
from langchain_postgres import PGVector
import os

# Self-hosted Firecrawl v2 already wired to Coronium 4G via docker-compose
loader = FirecrawlLoader(
    api_key="fc-local-dev-key",
    api_url="http://localhost:3002",
    url="https://docs.shopify.com",
    mode="crawl",                  # walk the whole docs site
    params={
        "limit": 2000,
        "scrapeOptions": {
            "formats": ["markdown"],
            "onlyMainContent": True,
            "headers": {"X-Rotate-Every": "40"},
        },
        "maxDepth": 6,
    },
)

docs = loader.load()                # Each doc already LLM-ready markdown
print(f"Loaded {len(docs)} pages through Coronium mobile proxies")

splitter = RecursiveCharacterTextSplitter(chunk_size=1200, chunk_overlap=120)
chunks = splitter.split_documents(docs)

vector_store = PGVector.from_documents(
    documents=chunks,
    embedding=OpenAIEmbeddings(model="text-embedding-3-large"),
    collection_name="shopify_docs_042026",
    connection=os.environ["PG_CONN"],
)

# Query it
results = vector_store.similarity_search(
    "How do I build a checkout extension in 2026?", k=5
)
for r in results:
    print(r.metadata["source"], "-", r.page_content[:120])
LlamaIndex

LlamaIndex Integration for RAG

LlamaIndex exposes FirecrawlReader via llama-index-readers-web. The reader returns LlamaIndex Document nodes that plug into any VectorStoreIndex.

LlamaIndex 0.12+ โ€” FirecrawlReader for a research agent

from llama_index.readers.web import FirecrawlReader
from llama_index.core import VectorStoreIndex, Settings
from llama_index.embeddings.openai import OpenAIEmbedding
from llama_index.llms.anthropic import Anthropic

Settings.llm = Anthropic(model="claude-opus-4-7")
Settings.embed_model = OpenAIEmbedding(model="text-embedding-3-large")

reader = FirecrawlReader(
    api_key="fc-local-dev-key",
    api_url="http://localhost:3002",     # Coronium-backed self-hosted
    mode="crawl",
)

documents = reader.load_data(
    url="https://www.shopify.com/partners/blog",
    params={
        "limit": 300,
        "scrapeOptions": {
            "formats": ["markdown"],
            "onlyMainContent": True,
            "headers": {"X-Proxy-Pool": "coronium-4g-us-east"},
        },
    },
)

index = VectorStoreIndex.from_documents(documents)
query_engine = index.as_query_engine(similarity_top_k=6)

answer = query_engine.query(
    "Summarise the three most impactful Shopify partner launches in Q1 2026."
)
print(answer)
for node in answer.source_nodes:
    print("Source:", node.metadata.get("source"))

Agents

Combine FirecrawlReader with LlamaIndex QueryEngineTool for autonomous research agents that scrape and cite sources.

Cost Control

Use mode="map" first to discover URLs, then selectively scrape โ€” saves up to 70% credits on large sites.

Streaming

FirecrawlReader works with LlamaIndex Workflows for streaming token output while ingestion continues in background.

Endpoint Guide

Scrape vs Crawl vs Extract

Pick the cheapest endpoint that answers your question. Picking wrong can 9x your bill.

EndpointBest forOutputCreditsLatencyPair with mobile?
/scrapeOne known URLMarkdown + HTML11.5-4s Yes, for hardened targets
/crawlWhole site ingestMarkdown per page1 per pageAsync job Essential above 500 pages
/mapSite URL discoveryURL list1 total2-8s Usually not needed
/searchLive web searchRanked markdown1 per result1-3s SERP targets benefit
/extractStructured LLM JSONPydantic/Zod JSON9 per page4-12s Avoid retries = save 9 credits

Pro pattern: map โ†’ scrape, skip /extract

Call /map first (1 credit) to discover URLs, filter client-side with regex, then call /scrape only on matching pages. Parse markdown locally with marked or markdownify. You save 8 credits per page compared to /extract, which adds up to $60+ per 1,000 pages.

Competitive Landscape

Firecrawl vs Jina Reader vs ScrapeGraphAI

The three AI-native scraping tools devs actually ship with in 2026 โ€” direct feature-for-feature comparison.

FeatureFirecrawl v2Jina ReaderScrapeGraphAI
PricingFree 500 / $16-$1.5K+Free + pay-as-you-goOpen source (self-host)
Single URL to markdownYes โ€” /scrapeYes โ€” r.jina.ai prefixYes โ€” SmartScraperGraph
Full-site crawlYes โ€” /crawl nativeNoPartial (DeepScraperGraph)
Site URL mapYes โ€” /mapNoNo
Live web searchYes โ€” /searchYes โ€” s.jina.aiNo
LLM structured JSONYes โ€” /extractLimitedYes โ€” via LLM backend
LangChain loaderFirst-partyCommunityCommunity
LlamaIndex readerFirst-partyCommunityCommunity
BYOP mobile proxiesEnterprise + self-hostNoYes (self-host)
Cloudflare bypassEnterprise stealthLimitedManual
SDK maturityPython + Node.js officialPython + curlPython only
Funding / traction$16.2M, 350K+ devsJina AI ~$40M Series AOpen source, 15K GitHub stars

Pick Firecrawl when

  • Scraping 1K+ pages/day in production
  • Need crawl, map, search and extract in one SDK
  • LangChain/LlamaIndex RAG pipeline
  • Enterprise support + SLA required

Pick Jina Reader when

  • One-off URLs inside an LLM prompt
  • Free tier without sign-up
  • Prototyping an agent
  • No crawl or extract needed

Pick ScrapeGraphAI when

  • Self-hosting is a hard requirement
  • Zero per-request cost ceiling
  • Tinkering with graph-based pipelines
  • No managed SLA required
Real Workloads

Production Use Cases in 2026

Patterns Coronium customers are running against Firecrawl v2 today. Every pattern below is backed by a live production deployment.

E-commerce price monitoring

/crawl Amazon, Shopify and independent stores daily. Coronium rotates every 25 pages so product pages never trigger bot pages. Feed deltas into Snowflake for competitive intelligence.

1.8M pages/month, 98% success

AI research agents

LangChain ReAct agents call /search and /scrape tools. Mobile IPs prevent agents from hitting search CAPTCHAs that would collapse the reasoning loop.

4ร— more successful tool calls

Social media intelligence

Instagram, TikTok, Threads and X public profiles. Each campaign gets a dedicated Coronium port + session, so account-level fingerprints stay consistent.

92% Instagram, 98% TikTok

Knowledge base ingestion

Crawl full SaaS documentation (Stripe, Shopify, AWS) into pgvector for in-product LLM help. Mobile IPs avoid 429s on aggressive docs CDNs.

120K docs/month, RAG live

SEO competitive scraping

/map every competitor domain weekly, /scrape net-new URLs, diff against last week. Identifies topic gaps before they rank.

3ร— faster content velocity

Lead enrichment pipelines

Clay, Smartlead and custom GTM stacks call Firecrawl /extract with schema to pull firmographics from company sites. Mobile IPs avoid LinkedIn rate limits.

50K leads/day enriched
Step-by-step

Day-1 Implementation Checklist

A concrete 60-minute plan to go from zero to production Firecrawl + Coronium mobile proxies.

1

Provision Coronium 4G port

2 min

Buy a dedicated mobile port from the Coronium dashboard. Copy the HTTPS endpoint, username, password, and rotation key.

2

Clone Firecrawl v2 repo

3 min

git clone https://github.com/mendableai/firecrawl && cd firecrawl/apps/api โ€” the monorepo includes the API, Playwright worker and docker-compose.

3

Wire env variables

5 min

Copy .env.example โ†’ .env. Set PROXY_SERVER, PROXY_USERNAME, PROXY_PASSWORD from Coronium. Set TEST_API_KEY to any string for local dev.

4

Bring up the stack

4 min

docker-compose up -d spins up Redis, Playwright, and the Firecrawl API on localhost:3002. Tail logs to verify Coronium egress.

5

Validate proxy IP

2 min

curl -x $PROXY_SERVER -U $PROXY_USERNAME:$PROXY_PASSWORD https://api.ipify.org โ€” should return a mobile carrier IP, not your home address.

6

First /scrape call

3 min

Hit the local API with a curl POST to /v2/scrape. Inspect the markdown response and the IP in the response metadata.

7

Wire LangChain

10 min

pip install langchain langchain-community firecrawl-py. Instantiate FirecrawlLoader with api_url=http://localhost:3002 and mode="scrape".

8

Add rotation hook

8 min

Wrap your loader in a retry decorator that calls the Coronium rotation URL on 403/429/5xx before retry โ€” exponential backoff, max 3 tries.

9

Vector store + query

15 min

Pipe FirecrawlLoader documents through RecursiveCharacterTextSplitter โ†’ OpenAIEmbeddings โ†’ PGVector. Verify a similarity_search returns expected chunks.

10

Monitor + scale

8 min

Add Prometheus scrape of Firecrawl /metrics. Graph creditsUsed, successRate, and rotationsPerHour in Grafana to catch regressions early.

Tuning

Performance Tuning Cheatsheet

Seven settings that separate a production-grade Firecrawl + Coronium deployment from a fragile one.

Rotation cadence

Wrong
Rotate every request โ€” wastes carrier handshake time
Right
Rotate every 25-50 pages for e-commerce, 5-10 for social, on 403/429 always

waitFor timing

Wrong
waitFor: 10000 on every page โ€” burns credits, adds latency
Right
Start at 2500ms, measure hydration, set per-target to the 95th percentile

Concurrency

Wrong
Max out Firecrawl concurrency on a single Coronium port
Right
One port handles ~10 concurrent pages comfortably. Buy more ports past that.

onlyMainContent

Wrong
Default false โ€” LLM sees nav, ads, cookie banners
Right
Set true on every scrape. Saves tokens downstream, improves RAG relevance.

Session stickiness

Wrong
One mobile IP across logged-in and anonymous sessions
Right
Use X-Coronium-Session header per account; rotate only within session

Retry logic

Wrong
Infinite retry on 403 โ€” hammers target, burns credits
Right
Max 3 retries with exponential backoff, rotate IP on retry, skip if still blocked

Credit monitoring

Wrong
Noticing the bill at end-of-month
Right
Alert at 70% monthly quota, graph creditsUsed per endpoint daily

Output format

Wrong
formats: ["markdown", "html", "rawHtml", "screenshot"] on every call
Right
Only request formats you parse. screenshot is 2 extra credits on /scrape
Frequently Asked

Firecrawl + Mobile Proxy FAQ

Answers to the questions we hear most from AI-first teams shipping scrapers in 2026.

Premium Mobile Proxy Pricing

Configure & Buy Mobile Proxies

Select from 10+ countries with real mobile carrier IPs and flexible billing options

Choose Billing Period

Select the billing cycle that works best for you

SELECT LOCATION

๐Ÿ‡บ๐Ÿ‡ธ
USA
$129/m
HOT
๐Ÿ‡ฌ๐Ÿ‡ง
UK
$97/m
HOT
๐Ÿ‡ซ๐Ÿ‡ท
France
$79/m
๐Ÿ‡ฉ๐Ÿ‡ช
Germany
$89/m
๐Ÿ‡ช๐Ÿ‡ธ
Spain
$96/m
๐Ÿ‡ณ๐Ÿ‡ฑ
Netherlands
$79/m
๐Ÿ‡ฆ๐Ÿ‡บ
Australia
$119/m
๐Ÿ‡ฎ๐Ÿ‡น
Italy
$127/m
๐Ÿ‡ง๐Ÿ‡ท
Brazil
$99/m
๐Ÿ‡จ๐Ÿ‡ฆ
Canada
$159/m
๐Ÿ‡ต๐Ÿ‡ฑ
Poland
$69/m
๐Ÿ‡ฎ๐Ÿ‡ช
Ireland
$59/m
๐Ÿ‡ฑ๐Ÿ‡น
Lithuania
$59/m
๐Ÿ‡ต๐Ÿ‡น
Portugal
$89/m
๐Ÿ‡ท๐Ÿ‡ด
Romania
$49/m
SALE
๐Ÿ‡บ๐Ÿ‡ฆ
Ukraine
$27/m
SALE
๐Ÿ‡ฌ๐Ÿ‡ช
Georgia
$69/m
SALE
๐Ÿ‡น๐Ÿ‡ญ
Thailand
$59/m
SALE
Save up to 10%

when you order 5+ proxy ports

Carrier & Region

USA ๐Ÿ‡บ๐Ÿ‡ธ

Available regions:

Florida
New York

Included Features

Dedicated Device
Real Mobile IP
10-100 Mbps Speed
Unlimited Data
ORDER SUMMARY

๐Ÿ‡บ๐Ÿ‡ธUSA Configuration

AT&T โ€ข Florida โ€ข Monthly Plan

Your price:

$129

/month

Unlimited Bandwidth

No commitment โ€ข Cancel anytime โ€ข Purchase guide

Money-back guarantee if not satisfied

Perfect For

Multi-account management
Web scraping without blocks
Geo-specific content access
Social media automation
500+Active Users
10+Countries
95%+Trust Score
20h/dSupport

Popular Proxy Locations

United Statesโ€ขCaliforniaโ€ขLos Angelesโ€ขNew Yorkโ€ขNYC

Secure payment methods accepted: Credit Card, PayPal, Bitcoin, and more. 2 free modem replacements per 24h.

Production Ready
BYOP Supported

Ship a 97%-success AI scraper in 2026

Get Coronium 4G mobile proxies dedicated to one user, rotate on demand, and pair them with Firecrawl v2 โ€” self-hosted or Enterprise BYOP. The only stack that reaches Instagram, TikTok, Ticketmaster and Cloudflare Enterprise targets at production scale.

97.4%
Success rate
<1s
IP rotation
24/7
Engineer support
$80
From / port