A high-resolution screenshot of any website
To take a high-resolution screenshot of a website, add device_scale_factor=2 to a CurlShot request. The page is drawn with twice the pixels in each direction, the way a retina display draws it, so text and icons stay sharp when the image is enlarged or printed. The layout of the page does not change, only its sharpness. Use 3 for three times the density.
curl "https://curlshot.com/api/v1/screenshot?access_key=YOUR_ACCESS_KEY&url=https://example.com&device_scale_factor=2&format=png" \
--output sharp.pngHow to take a high-resolution screenshot of a website in three steps
- 1
Create a free account and copy your access key.
- 2
Add device_scale_factor=2 to the request, and format=png for the sharpest text.
- 3
Fetch it and save the image.
How large the image gets at 1x, 2x and 3x
Pixel density multiplies both sides of the image and keeps the layout. Twice the density means four times the pixels, so file size and render time grow with it.
Show the table (3 rows)
| device_scale_factor | Image from a 1280 × 1024 window | Pixels compared with 1x | Good for |
|---|---|---|---|
| 1 (default) | 1,280 × 1,024 | 1x | Thumbnails, previews, monitoring |
| 2 | 2,560 × 2,048 | 4x | Retina displays, slides, landing pages |
| 3 | 3,840 × 3,072 | 9x | Print, posters, zooming into detail |
- Device presets bring their own density: phones are mostly 3x, tablets and MacBooks 2x.
- Your plan can set a lower maximum density for full-page screenshots. A higher value is lowered to the maximum.
- For a video, the frame must stay within 1920 × 1080 pixels, density included.
- Need a large image but not a large file? Capture at 2x and add image_width to resize the result.
What people use it for
- Screenshots for print, slides and posters
- Product images on a landing page that stay sharp on retina displays
- Images that people zoom into, like long articles and dashboards
- Store listings that ask for large images
For developers: one request
The same thing from your own code. It is a plain HTTP request, so it works from any language. Create a free account to get an access key.
Questions people ask
How do I take a high-resolution screenshot of a website?
Add device_scale_factor=2 to a CurlShot request. The image has twice the width and height in pixels, with the same layout.
What is the difference from a wider browser window?
A wider window changes the layout: the page shows its large-screen design. A higher pixel density keeps the layout and draws it with more pixels, so it is sharper.
Which format is best for sharp text?
PNG keeps every pixel as it was drawn. For smaller files use WebP or JPEG with image_quality set to 90 or more.
Can I set the exact size of the image?
Yes. viewport_width and viewport_height set the size of the browser window, and image_width resizes the finished image.
Guides that go deeper
- Cheat sheetViewport sizes cheat sheet: phones to desktopsViewport sizes in CSS pixels, screenshot sizes and device pixel ratios of iPhone, Pixel, Galaxy, iPad and laptop screens, drawn to scale, and the sizes to test.
- ComparisonPNG, JPEG, WebP or PDF for website screenshotsA decision flow, a comparison table and our own file-size measurements for choosing PNG, JPEG, WebP or PDF when you save a screenshot of a web page.
Related tools
- Screenshot APIA screenshot API for developers. One HTTP request turns a URL, HTML or Markdown into a PNG, JPEG, WebP or PDF. Full page, devices, blocking, cache, MCP.
- URL to imageConvert any URL into an image file. Paste a web address and download a PNG, JPEG or WebP screenshot of the page. Free to try, and one request by API.
- Full-page screenshotTake a screenshot of a whole web page, from the top to the very bottom, as one image. Paste the address, nothing to install. Also available as an API.