🖼️ Thumbnail Generator API
Generate YouTube thumbnails, Instagram posts, and LinkedIn banners — powered by SDXL, ready in ~30 seconds.
🖼️ Try Thumbnail Generator Free →Overview
The Thumbnail Generator API creates professional thumbnails for YouTube, Instagram, and LinkedIn from a text prompt. Each generation uses SDXL to produce high-quality, bold images sized perfectly for each platform's requirements.
💡 Perfect for
YouTubers who need quick thumbnails, social media managers managing multiple accounts, SaaS tools adding thumbnail generation, and Indian creators needing Hindi text support.
✅ No subscription required
Rs 10 per thumbnail (10 credits at $0.001/credit). No monthly fee. No minimum spend. Pay as you go.
Quick Start
1. Get your API key
Sign up at pixelapi.dev/app and grab your API key from the API Keys tab.
2. Make your first request
curl -X POST https://api.pixelapi.dev/v1/thumbnail/generate \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"prompt": "A chef holding a delicious pizza with melted cheese, dramatic lighting, dark moody background",
"preset": "youtube",
"style": "vibrant"
}'
3. Poll for result
# Wait ~30 seconds then check status
curl https://api.pixelapi.dev/v1/thumbnail/YOUR_GENERATION_ID \
-H "Authorization: Bearer YOUR_API_KEY"
Response when complete:
{
"status": "completed",
"output_url": "https://api.pixelapi.dev/outputs/images/2026/04/22/xxx.png",
"preset": "youtube",
"width": 1280,
"height": 720,
"credits_used": 10
}
Thumbnail Formats
| Preset | Dimensions | Best for |
|---|---|---|
youtube | 1280 × 720 (16:9) | YouTube video thumbnails — highest CTR potential |
youtube_short | 1080 × 1920 (9:16) | YouTube Shorts thumbnails |
instagram | 1080 × 1920 (9:16) | Instagram posts, stories, reels covers |
linkedin | 1200 × 624 (~1.9:1) | LinkedIn banner/profile header images |
Styles
| Style | Description | Best for |
|---|---|---|
vibrant (default) | High contrast, bold composition, professional lighting, 4K | Most thumbnails — food, fashion, tech reviews |
bold | Max saturation, strong visual impact, high energy | Gaming, fitness, motivation content |
cinematic | Film grain, anamorphic feel, dramatic shadows | Travel vlogs, short films, cinematic content |
dark | Dark moody atmosphere, deep shadows, premium feel | Tech reviews, horror, thriller content |
minimal | Clean whitespace, modern, typography-friendly | Business, education, minimal aesthetic channels |
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
prompt | string | Yes | Description of your thumbnail scene. Be specific about subjects, lighting, mood. Min 5 characters. |
preset | string | No | Format: youtube, instagram, linkedin, youtube_short. Default: youtube. |
style | string | No | vibrant, bold, cinematic, dark, minimal. Default: vibrant. |
text_overlay | string | No | Optional bold text to add to the thumbnail (max 200 chars). SDXL renders it into the image. |
negative_prompt | string | No | Things to avoid: blur, text, watermark, low quality. Default: "text, letters, watermark, blurry, low quality, deformed, ugly" |
Code Examples
Python
import requests
API_KEY = "YOUR_API_KEY"
BASE_URL = "https://api.pixelapi.dev"
def generate_thumbnail(prompt, preset="youtube", style="vibrant", text_overlay=None):
# Step 1: Submit job
resp = requests.post(
f"{BASE_URL}/v1/thumbnail/generate",
headers={"Authorization": f"Bearer {API_KEY}"},
json={
"prompt": prompt,
"preset": preset,
"style": style,
"text_overlay": text_overlay,
}
)
resp.raise_for_status()
data = resp.json()
gen_id = data["generation_id"]
print(f"Job queued: {gen_id}")
# Step 2: Poll for result (every 2s)
import time
while True:
time.sleep(2)
status_resp = requests.get(
f"{BASE_URL}/v1/thumbnail/{gen_id}",
headers={"Authorization": f"Bearer {API_KEY}"}
)
status = status_resp.json()
if status["status"] == "completed":
print(f"Done! URL: {status['output_url']}")
return status["output_url"]
elif status["status"] == "failed":
print(f"Failed: {status['error_message']}")
return None
# Example: YouTube gaming thumbnail
url = generate_thumbnail(
prompt="A fierce gamer wearing a headset, RGB neon lights in a dark gaming setup, dramatic lighting",
preset="youtube",
style="dark"
)
JavaScript / Node.js
const API_KEY = "YOUR_API_KEY";
const BASE_URL = "https://api.pixelapi.dev";
async function generateThumbnail(prompt, preset = "youtube", style = "vibrant") {
// Submit
const res = await fetch(`${BASE_URL}/v1/thumbnail/generate`, {
method: "POST",
headers: {
"Authorization": `Bearer ${API_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({ prompt, preset, style })
});
const data = await res.json();
const genId = data.generation_id;
// Poll
while (true) {
await new Promise(r => setTimeout(r, 2000));
const statusRes = await fetch(`${BASE_URL}/v1/thumbnail/${genId}`, {
headers: { "Authorization": `Bearer ${API_KEY}` }
});
const status = await statusRes.json();
if (status.status === "completed") {
console.log("Done!", status.output_url);
return status.output_url;
}
if (status.status === "failed") {
console.error("Failed:", status.error_message);
return null;
}
}
}
generateThumbnail("A chef holding a pizza with melted cheese", "youtube", "vibrant");
Pricing
| Plan | Credits | Cost | Price per thumbnail |
|---|---|---|---|
| Starter | 10,000 | $10 | $0.010 (10 credits) |
| Pro | 60,000 | $50 | $0.0083 (8.3 credits) |
| Scale | 300,000 | $200 | $0.0067 (6.7 credits) |
📊 How we compare
Replicate FLUX.dev charges $0.025 per image. We charge $0.010 — 2.5x cheaper. No subscriptions, pay per thumbnail.
Tips for Best Results
- Be specific about the subject: "A chef in a red jacket holding a pizza" beats just "pizza"
- Include lighting mood: "dramatic side lighting", "soft diffused daylight", "neon RGB backlight"
- Add contrast in prompts: "dark moody background with a bright subject" creates clear focal point
- Use negative_prompt: Add "blurry, text, watermark, low quality" to avoid common issues
- For Hindi text: Include "Hindi text" in prompt — SDXL handles Devanagari script well on our GPU nodes
- YouTube thumbnails: Include "bold composition, cinematic lighting" for maximum CTR
- Instagram: Use "vibrant" or "bold" style — high saturation reads well on mobile feeds
- LinkedIn: Use "minimal" or "cinematic" style — professional, clean, text-space friendly