Open Graph images, ready to share from one API call.
Create beautiful Open Graph images from your app, build, or editor. Get a public URL that keeps working every time your page is shared.
const image = await og.create({ title: "My Post" });
Add reusable OG images
Create an image from your server or build script, then publish the returned URL. No package required.
// Run on your server, at build time, or when publishing content.
const response = await fetch("https://www.ogmagic.dev/api/images", {
method: "POST",
headers: {
Authorization: "Bearer " + process.env.OGMAGIC_API_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({ title: "My article", template: "gradient-mesh" }),
});
if (!response.ok) throw new Error("Image creation failed");
const image = await response.json();
// Save image.url with your content; use it in og:image and twitter:image.<!-- Replace the example URL with image.url from the creation response. --> <meta property="og:image" content="https://www.ogmagic.dev/images/11111111-1111-4111-8111-111111111111.png" /> <meta property="og:image:width" content="1200" /> <meta property="og:image:height" content="630" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:image" content="https://www.ogmagic.dev/images/11111111-1111-4111-8111-111111111111.png" />
<!-- Replace the example URL with image.url from the creation response. --> <meta property="og:image" content="https://www.ogmagic.dev/images/11111111-1111-4111-8111-111111111111.png" /> <meta property="og:image:width" content="1200" /> <meta property="og:image:height" content="630" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:image" content="https://www.ogmagic.dev/images/11111111-1111-4111-8111-111111111111.png" />
Your links deserve better
See the difference an OG image makes when you share a link on social media.
A link without a preview image.

An image that introduces your page before the click.
Why developers choose OGMagic
Built for developers, by developers
Stupid simple
One API call gives you a public image URL. Put it in your meta tag and reuse it for every share.
One-time payment
Pay €10 / US $12 once, use forever. No monthly subscriptions. No annual renewals. No BS.
55+ templates
From minimal to bold, dark to colorful. Find the perfect style for your brand.
Free tier: 50 new hosted images per 30 days. Get a key with an email link.
Try it now
Paste your parameters and see a live preview:
Create once and reuse the public URL. Identical images use no extra credits. Sign in with your email, then return here.
Free tier: 5 templates • Pro: €10 / US $12 one-time for all 55

Previews are separate from your image allowance
50+ beautiful templates
Free tier includes 5 templates. Pro unlocks them all.
✨ Featured Templates
Hand-picked favorites from our 55+ template collection
Three ways to use it
Direct API calls
Send your title and template from your server or build. Save the returned image URL with your content.
Visual editor
Customize your image, create a hosted version, then copy its public URL or meta tags.
Framework SDKs
Create images from Next.js, Astro, or your publishing workflow with a small server-side helper.
API-first pricing
Create once and share freely. Get started with an email link, without a password.
Free
- ✓ 50 new hosted images / 30 days
- ✓ 5 templates (gradient, minimal, clean, etc.)
- ✓ Full editor access
- ✓ Email access, no password
- ✓ Store up to 200 images
- ✓ Image views included
Pro
- ✓ 500 new hosted images / 30 days
- ✓ Store up to 5,000 images
- ✓ All 55+ templates
- ✓ Image views included
- ✓ Private API key, no password
- ✓ No watermark
Stripe may offer your local currency at checkout. The secure payment form shows your final currency and total before you pay.
By purchasing, you agree to the Terms of Service and Privacy Policy
Buy Pro — €10 / US $12Need more hosted images? Contact us →
See full comparison →
Frequently Asked Questions
What are Open Graph images?
They're the preview images that appear when you share a link on Twitter, Facebook, LinkedIn, Slack, Discord, etc. A good OG image makes your links look professional and clickable.
How does OGMagic work?
Send your title and template to the hosted API using a private API key. You receive a public image URL for your page metadata. Identical saved images are reused without another generation credit.
Is this really a one-time payment?
Yes! Pay once, use forever. No monthly fees, no annual renewals. We believe developer tools should respect your wallet.
What if I'm not satisfied?
We offer a 14-day money-back guarantee, no questions asked. If OGMagic doesn't work for your use case, just email us and we'll refund you. No hard feelings.
Do I need to sign up?
Get an API key through an email link, without setting up a password or profile. Free includes 50 new hosted images per 30 days. You can try the editor previews without email access.
What frameworks does OGMagic support?
OGMagic works with any framework — Next.js (App Router & Pages Router), Astro, Remix, SvelteKit, plain HTML, and more. It's just a URL, so it works everywhere.
Can I auto-generate images for blog posts?
Yes. Create the image when publishing a post, during a build, or on your server. Save its returned URL with the post and reuse it for every share.
What is the recommended OG image size?
1200×630 pixels is a useful default for large social previews. Platforms can crop or present images differently, so keep key content away from the edges. OGMagic uses this size by default; Pro also supports custom dimensions.
The OGMagic newsletter
Get your 20% off Pro code
Join the OGMagic newsletter for a 20% discount code for Pro, Open Graph tips, and new templates.
Subscribe to OGMagic emails. Confirm by email; unsubscribe anytime.
Works with every framework
Copy-paste integration guides for your stack











