PricingCompare CORS proxies
cors.dev vs corsproxy.dev
corsproxy.dev Pro and cors.dev Pro both cost $5 per month, though corsproxy.dev counts requests and bandwidth per day and needs an API key on every plan, including its free plan of 500 requests per day. cors.dev needs no key or signup for public GET and HEAD requests, so moving a GET call means a new base URL and no key.
Official pages checked .
corsproxy.dev Pro
$5 / month
- Requests
- 20,000 per day, reset at 00:00 UTC
- Bandwidth
- 10 GB per day
- Methods
- GET and POST; PUT, PATCH and DELETE are not supported
- Size & types
- 10 MB request body and 10 MB response; executable files are refused
- Headers
- reqHeaders and resHeaders overrides, up to 20; managed upstream headers add a stored secret
- Caching
- Edge cache with ttl from 1 to 86,400 seconds
- API key
- Required on every plan: key= in browser URLs, X-API-Key from servers
- Free option
- 500 requests and 250 MB per day, after email signup
- Self-hosting
- Separate MIT-licensed Go relay; keys and quotas off by default; not the hosted code
cors.dev Pro
$5 / month
Plus tax where applicable.
- Requests
- 500,000 per monthly billing period
- Throughput
- 600 requests per minute and 10 concurrent requests per account; shared service limits also apply
- Targets
- Public HTTPS hostnames on port 443
- Size & time
- 1 MiB request body, 6 MiB response, 10 seconds
- Methods
- GET, HEAD, POST, PUT, PATCH and DELETE
- Headers
- Custom headers and explicit Authorization; no browser cookies or secret vault
- Caching
- Opt-in GET caching, 1 to 300 seconds. Eligible public responses only; cache hits count.
Check managed availability in your account. Free access is available now.
Create accountMigrate from corsproxy.dev: change the base URL, drop the key
corsproxy.dev takes a percent-encoded target at https://api.corsproxy.dev/proxy?url= with your key in key= or an X-API-Key header. cors.dev reads ?url= on / and /raw only, so /proxy?url= is rejected with HTTP 400: use https://proxy.cors.dev/?url= with the same encoded target and remove the key, since GET and HEAD to public APIs need none. Parameters after a percent-encoded target, such as key, ttl and reqHeaders, are ignored. POST and custom headers need managed access, where an origin-locked publishable key goes in X-Cors-Key and is never sent upstream.
// Before: corsproxy.dev, API key plus a percent-encoded target
const target = encodeURIComponent('https://api.example.com/path?limit=10');
const before = await fetch(`https://api.corsproxy.dev/proxy?url=${target}&key=YOUR_API_KEY`);
// After: same encoded target on proxy.cors.dev, no key for GET and HEAD
const after = await fetch(`https://proxy.cors.dev/?url=${target}`);
const data = await after.json();
// POST needs managed access; X-Cors-Key is never sent upstream
const created = await fetch('https://proxy.cors.dev/https://api.example.com/items', {
method: 'POST',
headers: { 'X-Cors-Key': 'YOUR_CONNECTION_KEY', 'Content-Type': 'application/json' },
body: JSON.stringify({ name: 'example' }),
});Choose for the requests you actually send.
corsproxy.dev Pro allows 20,000 requests and 10 GB per day, about 600,000 requests in a 30-day month against 500,000 per billing period on cors.dev Pro. It accepts 10 MB bodies and responses against 1 MiB and 6 MiB, and caches for up to 86,400 seconds against 300. Its quota is daily, so a busy day stops at 20,000 requests until 00:00 UTC, and it accepts GET and POST only, while cors.dev Pro adds PUT, PATCH and DELETE. corsproxy.dev keys start with sk_live_ and its terms ask you not to expose them in client-side code, though its docs put them in browser URLs with an optional lock to one origin. Without an account, cors.dev serves public GET and HEAD requests at 600 requests per minute per IP with no daily quota; corsproxy.dev answered a request without a key with HTTP 401 MISSING_API_KEY.
When to stay with corsproxy.dev
Stay with corsproxy.dev if you need POST on a free plan, bodies or responses between 6 MiB and 10 MB, or edge caching longer than 300 seconds. Stay if a provider secret must stay out of the browser: its managed upstream headers store the secret and add it when the target host and path match, and cors.dev never stores or injects upstream secrets. To run a proxy yourself, its separate MIT-licensed Go relay starts with go run main.go with no accounts, and keys and quotas are off by default; its README lists the settings to lock down before exposing it publicly.
Try cors.dev with your own public HTTPS API if its request model fits your app. The managed trial includes 1,000 requests total over 7 days, without a card. For public GET and HEAD APIs, anonymous use needs no account.
Neither a request count nor a price establishes which service is faster or more reliable. Check your payloads, credentials and traffic pattern against the provider's current documentation.