Open Graph Image API
Dynamic Open Graph images, generated on request
Design one Tailwind template, then generate a correctly-sized social share image for every page you publish — populated per request, not per design-tool export.

POST /api/v1/render · type: "tailwind" · format: "png" · dimensions: "og-image"The size and workflow already matches how OG images get used
Correct dimensions, no guesswork
The og-image preset locks output to 1200×630 — the safe universal size for Facebook, LinkedIn, Slack, and X large-card previews — so unfurls never crop wrong.
One template, infinite pages
The title, subtitle, badge, and byline are just template variables. Swap them per request; the visual design stays fixed in your codebase.
Generate at request time or at build time
Call it from an edge function per pageview, or run it once during your build/CI step and store the result — both are equally valid.
How it works
- 1
Design one OG template in Tailwind
Lay out a title, subtitle, category badge, and byline once, the way you'd design any other component.
- 2
Call the API with that page's specific text
Swap in the actual title, author, and category for whichever page you're generating an image for.
curl -X POST https://renderfy.io/api/v1/render \ -H "Authorization: Bearer rfy_live_YOUR_KEY" \ -H "Content-Type: application/json" \ -d '{ "type": "tailwind", "content": "<div class=\"flex h-full w-full flex-col justify-between bg-zinc-900 p-16 text-white\"><h1 class=\"text-6xl font-bold\">Your Post Title</h1></div>", "options": { "format": "png", "dimensions": "og-image" } }' \ --output og-image.png - 3
Point your meta tag at the result
Reference the returned image from <meta property="og:image">, or upload it and reference a stable URL.
Frequently asked questions
What size should an Open Graph image be?+
1200×630px is the safe, universal size accepted by Facebook, LinkedIn, Slack, and X/Twitter's large-card preview — exactly what the og-image dimension preset outputs.
Can I generate these at build time instead of per request?+
Yes. Call the API from your build or CI step and commit or upload the resulting PNGs — it works just as well as generating them on demand at request time.
Is this tied to Next.js or any particular framework?+
No. It's a plain HTTP API — call it from any backend language, a CI job, a cron task, or a serverless function, regardless of what framework serves your pages.
Can I use my own fonts and brand colors in the template?+
Yes. Every color, font weight, and layout detail in the template is controlled with standard Tailwind utility classes.
More ways to use the API
Give every page its own share image
Sign up, mint an API key, and generate your first Open Graph image in the next 5 minutes — 100 free credits included — no card needed.