Need an API to extract Open Graph metadata or generate link previews? Here's a comparison of the main options in 2026, including free alternatives that won't break the bank.
Why You Need a Link Preview API
If you're building any of these, you need link previews:
- Chat apps (Slack-style URL unfurling)
- Social feeds (rich link cards)
- CMS / blog platforms (embed previews)
- SEO tools (meta tag analysis)
- Bookmarking apps
You could build your own scraper, but you'll quickly run into:
- Handling JavaScript-rendered pages
- Timeout and redirect chains
- Character encoding issues
- Rate limiting and caching
- Maintenance overhead
An API handles all of this for you.
The Comparison
1. Microlink ($20-76/mo)
What it does: URL metadata extraction, screenshots, PDF generation, and more.
Pricing:
- Free: 50 requests/day
- Pro: $20/mo (10,000 req/mo)
- Business: $76/mo (100,000 req/mo)
Pros: Feature-rich, good documentation, screenshot support
Cons: Expensive, limited free tier, complex pricing
2. OpenGraph.io ($12-79/mo)
What it does: Open Graph tag extraction, site info, and content scraping.
Pricing:
- Free: 100 requests/month (not per day!)
- Starter: $12/mo (10,000 req/mo)
- Business: $79/mo (100,000 req/mo)
Pros: Simple API, reliable
Cons: Very limited free tier (100/month), no image generation
3. LinkPeek (Free — $9/mo)
What it does: URL metadata extraction + SVG preview card generation.
Pricing:
- Free: 100 requests/day (3,000/month!)
- Pro: $9/mo (5,000 req/day)
- Business: $29/mo (50,000 req/day)
Pros:
- Most generous free tier (100/day vs. competitors' 50/day or 100/month)
- SVG preview cards — unique feature none of the others offer
- Runs on Cloudflare's edge network (300+ PoPs, sub-50ms)
- Simple email-only signup
Cons: No screenshot support yet (coming soon), newer service
Try it: linkpeek-api.linkpeek.workers.dev
4. DIY with Puppeteer/Playwright
What it does: Whatever you code it to do.
Pricing: Server costs ($5-50/mo for a VPS)
Pros: Full control, no API limits
Cons:
- Maintenance headache
- Memory-hungry (headless browsers eat RAM)
- Cold start latency
- You have to handle caching, rate limiting, error handling yourself
5. Open Source Libraries
Options:
-
open-graph-scraper(npm) — Node.js OG tag parser -
link-preview-js(npm) — Client/server link preview -
og-image(Vercel) — OG image generation (not extraction)
Pros: Free, self-hosted
Cons: You host and maintain it, no caching, no edge distribution
Quick Comparison Table
| Feature | LinkPeek | Microlink | OpenGraph.io | DIY |
|---|---|---|---|---|
| Free tier | 100/day | 50/day | 100/month | N/A |
| Pro price | $9/mo | $20/mo | $12/mo | $5-50/mo |
| SVG cards | Yes | No | No | Build it |
| Screenshots | Coming soon | Yes | No | Yes |
| Edge CDN | 300+ PoPs | Limited | Limited | Your server |
| Setup time | 10 seconds | Minutes | Minutes | Hours |
| Maintenance | Zero | Zero | Zero | Ongoing |
Code Example: Switching from Microlink to LinkPeek
Before (Microlink):
const response = await fetch(
`https://api.microlink.io/?url=${encodeURIComponent(url)}`,
{ headers: { 'x-api-key': MICROLINK_KEY } }
);
const { data } = await response.json();
// data.title, data.description, data.image.url
After (LinkPeek):
const response = await fetch(
`https://linkpeek-api.linkpeek.workers.dev/v1/preview?url=${encodeURIComponent(url)}&key=${LINKPEEK_KEY}`
);
const data = await response.json();
// data.title, data.description, data.image
Almost identical API surface — migration takes minutes.
My Recommendation
- For side projects and MVPs: Use LinkPeek's free tier (100 req/day is plenty)
- For production apps needing screenshots: Microlink (until LinkPeek adds screenshot support)
- For high-volume enterprise: Build your own with Puppeteer on dedicated infrastructure
-
For learning: Start with
open-graph-scrapernpm package
Getting Started with LinkPeek
# Get your free API key
curl -X POST https://linkpeek-api.linkpeek.workers.dev/v1/register \
-H "Content-Type: application/json" \
-d '{"email": "you@example.com"}'
# Try it
curl "https://linkpeek-api.linkpeek.workers.dev/v1/preview?url=https://github.com&key=YOUR_KEY"
No credit card, no OAuth, no setup wizard. Email to API key to start building.
What link preview API are you using? Anything I missed? Let me know in the comments.
Top comments (0)