Running your own headless Chrome for screenshots means managing browser binaries, memory spikes, zombie processes, and constant version churn. From Go, Screenshotty replaces all of it with one HTTPS call: send the URL and options, get the image back.
The standard net/http package and nothing else — keep your binaries small instead of shipping chromedp with a bundled Chromium.
Try it without code — free Website Screenshot toolpackage mainimport ("bytes""io""net/http""os")func main() {payload := []byte(`{"url": "https://example.com","format": "image/png","full_page": true,"block_cookie_banner": true}`)req, _ := http.NewRequest("POST", "https://api.screenshotty.link/api/v1/screenshot", bytes.NewBuffer(payload))req.Header.Set("X-Api-Key", os.Getenv("SCREENSHOTTY_API_KEY"))req.Header.Set("Content-Type", "application/json")resp, err := http.DefaultClient.Do(req)if err != nil {panic(err)}defer resp.Body.Close()out, _ := os.Create("screenshot.png")defer out.Close()io.Copy(out, resp.Body)}
Any HTTP client works. GET with query params for simple captures, POST with JSON for complex ones.
Real Chrome rendering with full-page capture, custom viewports up to 4K, dark mode, and CSS-selector cropping.
Built-in ad blocking and cookie-banner blocking — no injected cleanup scripts to maintain.
Webhooks for async jobs, geo-targeted captures from multiple countries, and PDF/WebP/PNG/JPEG output.
Send an HTTP POST to https://api.screenshotty.link/api/v1/screenshot with the target url and your options, using your API key in the X-Api-Key header. The response body is the image itself — write it to disk or pipe it onward. No browser automation library is required.
No. The rendering happens on Screenshotty's managed Chrome fleet, so your Go app only makes an HTTP request. That removes browser binaries from your deployments and the operational work of scaling headless Chrome.
Both. full_page=true captures the entire scrollable page (use scroll_to_bottom for lazy-loaded content), or pass a CSS selector to capture a single element.
Yes. 100 screenshots per month free, no credit card required. Paid plans start at $9/month for 2,500 screenshots with $0.004 pay-as-you-go overage.