RenderOG Documentation

RenderOG is an edge-rendered Open Graph image and screenshot API. Generate production-grade OG images in under 100ms with true pay-as-you-go pricing — no credits, no cold starts, and we never bill failed renders or cache hits.

Two Capabilities

OG Images (Live) Generate Open Graph images on-the-fly from signed URLs. Choose from four built-in templates (basic, gradient, blog, product) or pass custom HTML/CSS. Rendered at Cloudflare's edge in under 100ms, cached at the edge for 1 year.

Screenshots (Coming Soon) Capture website screenshots with Cloudflare Browser Rendering. Full-page or viewport crops, multiple formats (PNG, WebP, JPEG), with cookie dismissal and custom delays. Currently returns 501 — rolling out Phase 5.

How It Works

All requests are signed with HMAC-SHA256 to prevent tampering. You provide a request (template, title, etc.) and a signature computed from your signing secret. The API verifies the signature, renders the image, and returns it as cached bytes.

For API access, use bearer-token authentication (Authorization: Bearer sk_live_...) to call /v1/render and /v1/usage.

Public signed URLs (GET /og) are ideal for dynamic sharing links and meta tags. API keys (/v1/*) are for backend integrations and custom HTML templates.

Start Here

  • Quickstart — Get an API key, sign your first URL, and render an OG image in 5 minutes.
  • GET /og Reference — Full parameter documentation, all four templates, caching behavior, and Satori/CSS constraints.
  • GET /screenshot Reference — Planned screenshot API contract (coming soon; currently 501).
  • MCP Server — Connect Claude Desktop, Claude Code, or Cursor via the Model Context Protocol.
  • Error Codes — Every HTTP status and error code, with billing status for each.
  • Pricing & Billing — Free tier limits, PAYG model, usage endpoints, and quota behavior.
  • FAQ — Eight common questions answered in 60 words or less.

Key Promises

Sub-100ms OG renders (cached), 1–4s screenshots (when live). $0.003 per render, no minimum, billed only on successful renders (status 200) that miss the cache. Free tier of 500 renders/month — never billed, even on PAYG plans. Failures never billed — 4xx and 5xx responses have zero cost. Cache hits never billed — the same render twice costs nothing the second time.


Base URL & Authentication

Public endpoint: https://api.renderog.app

API key auth (for /v1/*):

Authorization: Bearer sk_live_<40 hex characters>

Keys are created in your dashboard. The full key is shown exactly once at creation; store only the hash. Rotate keys at any time with POST /v1/keys.


Signing Algorithm (for GET /og)

  1. Collect all query parameters except sig.
  2. Sort them alphabetically by key.
  3. Build a canonical string: key1=encodeURIComponent(value1)&key2=encodeURIComponent(value2)...
  4. Compute sig = HMAC-SHA256(SIGNING_SECRET, canonical) and encode as hex.

Details and worked examples in Quickstart.


Get Help