Website Screenshot API: Full Page, Mobile, No Cookie Banners
Pricing
Pay per usage
Website Screenshot API: Full Page, Mobile, No Cookie Banners
Take screenshots of any public web page with Localscreenshot : full page, desktop or phone, PNG, JPEG or WebP, with cookie banners and ads hidden. Free to try without an account, 3 pages per run. With a free localscreenshot key: up to 100 pages per run, PDF, and screenshots from 227 countries.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Localscreenshot
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Website Screenshot API
Take screenshots of public web pages: full page or just the visible part, on a desktop, a tablet or a phone screen, with cookie banners and ads hidden. The images land in the key-value store of the run and each page gets one row in the dataset.
Free to try, no account needed. Run it as it is and the first 3 pages of your list are captured. With the key of a free localscreenshot account (50 free credits a month, no card) you get up to 100 pages per run, screenshots as seen from another country, and PDF.
The screenshots are taken by localscreenshot, a screenshot API built for AI agents and scripts. This Actor is the same service, packaged for Apify: no browser runs inside it, so a run is short and light.
What you can do with it
- Capture a list of pages in one run, for a report, an archive or a visual check.
- Get a clean picture: cookie banners and ads can be hidden, and a page can be asked for its dark theme.
- Capture a page as a phone, a tablet or a desktop sees it: 11 devices.
- Save a page as PNG, JPEG or WebP, or as a PDF with your own key.
- See a page as a visitor from another country sees it, with your own key. The result tells you the country the page was actually loaded from.
- Schedule it, chain it with other Actors, or call it from the Apify API.
Without a key, and with your own
| Without an API key | With your own free key | |
|---|---|---|
| Pages per run | 3 | 100 |
| Full page, device, PNG, JPEG, WebP | Yes | Yes |
| Hide cookie banners, block ads, dark mode | Yes | Yes |
| Country | No | Yes, 227 countries |
| No | Yes | |
| Extra wait before the screenshot | No | Yes |
| What it uses | A small allowance shared by everyone who tries the Actor. It has a limit per day, and a limit per site per day. | Your own credits: 50 free every month, no card. |
Without a key, the pages after the third are listed in the dataset with what to do to capture them, and a run that asks for a country or a PDF captures nothing and says why. When the shared allowance of the day is used up, the run ends normally and the dataset says so: add your own free key and run it again.
To get a key: create a free account, open Connect in the dashboard, copy the key and paste it in the API key field of the Actor. The field is stored encrypted.
Input
| Field | What it does |
|---|---|
Pages to capture (urls) | One web address per line, starting with http:// or https://. Up to 100 in one run; the first 3 are captured without a key. |
API key (apiKey) | Optional. The key of your localscreenshot account. Stored encrypted. |
Full page (fullPage) | Capture the whole scrollable page instead of the visible part. |
Device (device) | desktop, desktop_hd, laptop, ipad, ipad_pro, ipad_mini, iphone_15, iphone_15_pro_max, iphone_se, pixel_8, galaxy_s24. |
File format (format) | png, jpeg, webp, or pdf with your own key. |
Country (country) | A two-letter code such as BR, DE or JP. Needs your own key. Leave it empty to load the page from the server. |
Hide cookie banners (blockCookieBanners) | Removes most cookie banners. A banner the filters do not know stays in the picture. |
Block ads (blockAds) | Blocks ads on the page. |
Dark mode (darkMode) | Asks the page for its dark theme, when it has one. |
Extra wait (delayMs) | Waits up to 5,000 ms after the page has loaded, before the screenshot. Applied with your own key. |
Works without a key:
{"urls": ["https://example.com", "https://www.wikipedia.org"],"fullPage": true,"device": "iphone_15","format": "jpeg","blockCookieBanners": true}
With your own key:
{"urls": ["https://example.com", "https://www.wikipedia.org"],"apiKey": "YOUR_LOCALSCREENSHOT_KEY","country": "BR","format": "pdf"}
Output
Each page gives one dataset row. The image itself is in the key-value store of the run, under the name in imageKey; imageUrl opens it.
{"url": "https://example.com","status": "succeeded","takenAt": "2026-10-13T10:00:00.000Z","finalUrl": "https://example.com/","pageStatus": 200,"title": "Example Domain","imageKey": "screenshot-001-example.com.png","imageUrl": "https://api.apify.com/v2/key-value-stores/STORE_ID/records/screenshot-001-example.com.png","contentType": "image/png","width": 1440,"height": 900,"bytes": 18364,"note": "Taken without an API key (3 pages per run). A free account gives 50 free credits a month, no card, with country and PDF.","link": "https://localscreenshot.com/signup?utm_source=apify&utm_medium=actor&utm_campaign=website-screenshot"}
The status of a row is one of:
succeeded: the image is stored.failed: the page could not be captured.errorCodeanderrorMessagesay why. One failed page does not stop the others.skipped: the page was not tried because it needs your own key (errorCodeisown_key_required).summary: the last row of a run without a key. It says how many pages were captured, how many were left aside and why, and what a free account gives. The same facts are in its_captured,_failed,_leftAside,_why,_signup,_pricing,_mcpand_clifields. A run with your own key has no summary row.
Every row has a note and a link: what to do next, and where. With your own key, a row also has creditsCharged and creditsRemaining, and with a country countryRequested and countryObserved.
If you read the dataset from code, keep the rows whose status is succeeded.
What it costs
The Actor is free. Without a key, the screenshots are on us, within the limits above. With your own key, a screenshot uses 1 credit of your localscreenshot account, or 2 when you choose a country, and a screenshot that fails is not charged. A free account gets 50 credits every month, with no card; plans and credit packs are on the pricing page. On the Apify side you pay the platform usage of the run, which is small because the Actor does not run a browser.
What it does not do
- It does not sign in to websites, and it does not capture pages behind a login.
- It does not solve CAPTCHAs and does not get past paywalls. Some sites block automated browsers: the page then comes back as failed, with the reason.
- It captures public pages only. Addresses of private networks are refused.
- It does not click or type on the page.
Limits and fair use
Up to 100 pages in one run, two at a time. A free localscreenshot account can send 10 requests a minute; the Actor waits and tries again when it is told to slow down.
Screenshots taken without a key are kept on our side for 24 hours at most; the copy in your run's key-value store follows your Apify retention. The service follows the localscreenshot acceptable use policy and terms. To report a misuse, or to ask that your site is not captured: hello@localscreenshot.com.
More than this Actor
The same service is available as a REST API, an MCP server for Claude, Cursor and other AI tools, and a command line client (npx localscreenshot https://example.com).
Questions: hello@localscreenshot.com.