Free
$0
Free
$5 platform usage/month; CU $0.20
Plan details
none - account blocked until next cycle
Cloud platform and marketplace of ready-made scrapers ('Actors') you run by API, with built-in storage, proxies, schedules, webhooks and an MCP server. Best for scraping sites that have no API via pay-per-result Store Actors.
The actions you pay for, as Apify prices them.
| Action | Cost | Per |
|---|---|---|
| Compute unit (1 GB RAM x 1 hour) | $0.20 Free/Starter, $0.16 Scale, $0.13 Business | CU |
| Residential proxy | $8 Free/Starter, $7.5 Scale, $7 Business | GB |
| Datacenter proxy | 5/30/200/500 IPs included; then $1 (Starter), $0.8 (Scale), $0.6 (Business) | IP |
| Google SERP proxy | $2.5 Free/Starter, $2 Scale, $1.7 Business | 1,000 SERPs |
| Unblocker | $1.5 Free/Starter, $1.25 Scale, $1 Business | 1,000 requests |
| Add-on concurrent run | $5 | run |
| Add-on Actor RAM | $1 | GB |
| Store Actors | set per Actor (pay-per-event, e.g. per result) or pay-per-usage | per Actor page |
| Action | Cost | Per |
|---|---|---|
| Personal training add-on | $150 | hour |
| Storage and data transfer (in-app Pricing tab, Free plan) | dataset $0.005 / 1,000 writes; key-value store $0.05 / 1,000 writes; request queue $0.01 / 1,000 writes; timed storage $1 and $4 per 1,000 GB-hours; external transfer $0.20/GB, internal $0.05/GB | as stated |
US dollars, as Apify's pricing page shows them on 25 Oct 2026. Monthly and annual billing are shown apart.
Free tier Free plan $0/month with $5 of platform usage; blocked (not billed) when exhausted until next cycle; no credit card
$0
Free
$5 platform usage/month; CU $0.20
none - account blocked until next cycle
$19/mo
billed monthly
$17/mo
billed annually
$19 platform usage/month; CU $0.20; Bronze Store discount
pay-as-you-go, billed on next invoice up to your usage limit
$199/mo
billed monthly
$179/mo
billed annually
$199 platform usage/month; CU $0.16; Silver Store discount
pay-as-you-go
$999/mo
billed monthly
$899/mo
billed annually
$999 platform usage/month; CU $0.13; Gold Store discount
pay-as-you-go
$1/mo
billed monthly
$1/mo
monthly billing only
one-time $500 platform usage for first 6 months; Store limited to universal Actors
Custom quote
custom
Global 250,000 requests/minute per user (per IP if unauthenticated).
| Limit | Free | Starter | Scale | Business |
|---|---|---|---|---|
| Max Concurrent Runs | 5 | 32 | 128 | 256 |
| Max Ram | 16 GB (combined and per run) | 64 GB combined across running jobs (pricing page; limits page 65,536 MB combined); max 32 GB for a single run (limits page) | 256 GB | 512 GB |
Default 60 req/s per resource (one Actor, run, dataset, store); higher on some endpoints: 35 (request-queue batch, head/lock), 100 (KV ZIP download), 200 (KV record CRUD, list keys), 350 (request CRUD, lock ops), 400 (run Actor, run task async/sync, metamorph, push dataset items). 429 rate-limit-exceeded: retry with exponential backoff. Each response carries X-RateLimit-Limit.
Apify uses API key. The steps below follow Apify's own docs.
curl -X GET "https://api.apify.com/v2/store" \
-H "Authorization: Bearer $APIFY_API_KEY"| What | Where |
|---|---|
| Documentation | docs.apify.com |
| API reference | docs.apify.com/api/v2.md |
| OpenAPI spec | docs.apify.com/api/openapi.json |
| llms.txt | docs.apify.com/llms.txt |
| Changelog | docs.apify.com/api/client/js/docs/changelog.md |
| Base URL | https://api.apify.com |
| MCP server | https://mcp.apify.com |
| SDKs | apify-client (JavaScript), apify-client (Python), Apify SDK (JS/Python) for building Actors, Apify CLI |
We run Apify actors in our standard workflows: LinkedIn company pages for company qualification (about $0.0035 per company), LinkedIn profile posts (pay per event, $0.002 per post) and Instagram reel transcripts for our own content research (about $0.01 per reel). Two things we learned: the profile-posts actor returns reposts under the original author, so we split them out on the repostedBy field, and on a pay-per-event actor the run's usage total can show only the start event, so we read the charged event counts instead. On the Free plan, the $5 monthly usage cap returns HTTP 402 once it is spent.
Other Research and scraping tools in this directory, each with its own review.
Four things to settle first, each read off Apify's own pages.
Tell us what you want Apify to do in your stack. We will show you how we would wire it into your data, outbound or CRM, and what we would check first.
Read from apify.com/pricing.md, docs.apify.com/api/v2.md and docs.apify.com/api/v2.md. Verified 25 Oct 2026.
| Method | Path | What it does | Cost |
|---|---|---|---|
| GET/POST/PUT/DELETE | /v2/actors, /v2/actors/{actorId}, /v2/actors/{actorId}/validate-input | List, create, read, update, delete Actors; validate an input | free (API call); platform usage only when runs execute |
| GET/POSTasync | /v2/actors/{actorId}/runs | Start an Actor run (async) or list its runs | Actor's own price (pay-per-event or pay-per-usage) + platform usage |
| GET/POST | /v2/actors/{actorId}/run-sync, /v2/actors/{actorId}/run-sync-get-dataset-items | Run an Actor and wait for its OUTPUT or dataset items in the same HTTP response | same as a normal run |
| GET/PUT/DELETE/POST | /v2/actor-runs, /v2/actor-runs/{runId}, /abort, /metamorph, /reboot, /resurrect, /charge | Inspect, abort, metamorph, reboot or resurrect runs | free |
| GET/POST/PUT/DELETE | /v2/actors/{actorId}/runs/last/... and /v2/actor-tasks/{actorTaskId}/runs/last/... | Shortcuts to the last run's dataset, key-value store, request queue, log, abort, metamorph, reboot | free API call; storage reads count as platform usage per pricing FAQ |
| GET/POST/PUT/DELETEasync | /v2/actor-tasks, /v2/actor-tasks/{actorTaskId}, /input, /runs, /run-sync, /run-sync-get-dataset-items, /webhooks | Saved Actor configurations (tasks) and running them | as the underlying Actor |
| GET/POST/PUT/DELETEasync | /v2/actors/{actorId}/versions, /versions/{versionNumber}/env-vars, /v2/actors/{actorId}/builds; /v2/actor-builds, /{buildId}, /abort, /log, /v2/actors/{actorId}/builds/{buildId}/openapi.json | Manage Actor source versions, env vars and builds; get a build's generated OpenAPI | builds consume compute units |
| GET/POST/PUT/DELETE | /v2/datasets, /v2/datasets/{datasetId}, /items, /statistics | Datasets: read/write result items (JSON, CSV, XLSX, etc.) | storage operations billed as platform usage |
| GET/POST/PUT/DELETE | /v2/key-value-stores, /{storeId}, /keys, /records, /records/{recordKey} | Key-value stores (INPUT, OUTPUT, screenshots, files) | storage operations billed as platform usage |
| GET/POST/PUT/DELETE | /v2/request-queues, /{queueId}, /requests, /requests/batch, /head, /head/lock, /requests/{requestId}/lock, /requests/unlock | Request queues for crawler URL frontiers | storage operations billed as platform usage |
| GET/POST/PUT/DELETE | /v2/webhooks, /{webhookId}, /test, /dispatches; /v2/webhook-dispatches | Webhooks on run/build events (e.g. ACTOR.RUN.SUCCEEDED) | free |
| GET/POST/PUT/DELETE | /v2/schedules, /{scheduleId}, /log | Cron schedules for Actors and tasks | free |
| GET | /v2/store | Search Apify Store Actors | free |
| GET/PUT | /v2/users/me, /v2/users/{userId}, /v2/users/me/usage/monthly, /v2/users/me/limits | Account, monthly usage and spending limits (can set max monthly usage) | free |
| GET | /v2/logs/{buildOrRunId} | Raw log of a run or build | free |
| GET/POST/PUT/DELETE | /v2/browser-info, /v2/tools/encode-and-sign, /v2/tools/decode-and-verify | Utility tools | free |
No endpoint matches that filter.