apyhub
Cover illustration for Video Thumbnails for SEO: How They Lift CTR, and How to Generate Them with an API
Engineering · Seo

Video Thumbnails for SEO: How They Lift CTR, and How to Generate Them with an API

Video Thumbnails for SEO: How They Lift CTR, and How to Generate Them with an API

01Introduction

A video thumbnail is the still image that represents a video in search results, social feeds and on your own site. For SEO it does two jobs. Google needs a valid thumbnail before a video can appear in video results. And once the video shows up, the thumbnail is what people look at when they decide whether to click.

This guide covers what Google expects from a thumbnail, what makes one worth clicking, and how to create thumbnails automatically with the ApyHub video thumbnail APIs.

02What Google requires

Google's video SEO best practices are clear: "To be eligible to appear in video features, a video must have a valid thumbnail image." In practice, a valid thumbnail:

  • Uses a common image format, such as JPEG, PNG or WebP
  • Is at least 60x30 pixels, with larger sizes preferred
  • Lives at a permanent address that doesn't change or expire
  • Can be reached by Google, so it isn't blocked or behind a login

If you don't provide a thumbnail, Google may pick a frame from the video on its own. To choose the frame yourself, you declare your thumbnail on the page (more on that below).

03What makes a thumbnail get clicked

Ranking gets a video into the results. The thumbnail earns the click. A few habits make the difference:

  • Show the payoff. Pick the frame that answers the searcher's question, like the finished result or the key screen. The first frame is often a black screen or a logo.
  • Keep it readable when small. Search results and phones show thumbnails at a few hundred pixels wide. One clear subject and strong contrast work better than small text.
  • Stay consistent. Use the same shape (16:9 is the safest choice) across your videos so pages and carousels line up.
  • Match the content. A thumbnail that overpromises leads to quick exits, and that hurts how the video performs over time.
  • Give every video its own. Reusing one generic image makes your videos hard to tell apart in results.

04Tools to create video thumbnails

The right tool depends on whether you design a few thumbnails by hand or need one for every video automatically.

ToolBest forTrade-off
CanvaDesigning a few custom thumbnails with templates and textManual work for each video
Adobe ExpressCustom designs with Adobe assetsManual work for each video
YouTube StudioVideos hosted on YouTubeThe thumbnail stays on YouTube
FFmpegDevelopers extracting frames on their own serversYou run and maintain the servers
ApyHub thumbnail APIsApps that create a thumbnail for every uploaded videoPay per call

Design tools are the better fit when a person crafts each image. APIs and FFmpeg fit when every video needs a thumbnail the moment it's uploaded.

05Generating thumbnails with ApyHub

The ApyHub catalog has three video thumbnail APIs:

  • Generate Thumbnail from Video takes a video link and returns a PNG image of the frame you choose. The result comes back in the same request.
  • Generate Thumbnail from Video Job does the same work in the background. It suits long videos and large batches: you submit the video, get a job ID, and collect the image when it's ready.
  • Generate Video Thumbnail returns a short video clip instead of an image, for animated previews on hover.

Here is a request that captures the frame at second 3 as a 1280x720 image:

bash

· bash
curl -X POST "https://api.eu.apyhub.com/apyhub/generate-thumbnail-from-video/url/link" \
  -H "apy-token: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "video_url": "https://assets.apyhub.com/samples/sample.mp4",
    "time": "3",
    "size": "1280x720"
  }'

The response contains a link to the finished image:

json

· json
{
  "data": "https://storage.example.com/video-clips/thumb.png?sig=abc"
}

That link is temporary. Download the image and store it on your own site or CDN, then use that permanent address on your pages. This is the step that keeps the thumbnail eligible for Google.

To try the request without writing code, open it in Voiden, the open-source API client, add your API key and run it.

These APIs are also available through ApyHub MCP. An AI agent can find and call them directly, without a hand-written wrapper, so an agent that publishes videos can create the thumbnail in the same workflow.

Explore the video processing APIs →

06Telling Google which thumbnail to use

With the image stored at a permanent address, add a short block of structured data to the page that hosts the video. Google's video structured data guide asks for three things: the video's name, the thumbnail address and the upload date.

json

· json
{
  "@context": "https://schema.org",
  "@type": "VideoObject",
  "name": "How to convert a Word document to PDF",
  "thumbnailUrl": "https://cdn.example.com/thumbnails/word-to-pdf.png",
  "uploadDate": "2026-09-22"
}

Check the page with Google's Rich Results Test before you publish. It's also worth using the same image as your social preview image, so shared links match what search shows.

07Conclusion

Video thumbnails affect SEO in two ways: Google needs them to show a video in video results, and people use them to decide whether to click. A good thumbnail shows a clear, relevant frame, sits at a permanent address and is declared in the page's structured data.

For a few marketing videos, Canva or Adobe Express is the practical choice. For a product that handles many videos, creating thumbnails automatically with FFmpeg or an API scales better. The ApyHub thumbnail APIs handle that with one call per video and no servers to run.

08FAQ

Do video thumbnails affect SEO? Yes. Google requires a valid thumbnail for a video to appear in video results, and the thumbnail has a big influence on whether people click.

What size should a video thumbnail be? Google's minimum is 60x30 pixels, but larger is better. A 16:9 image at 1280x720 works well for search, social and embeds.

Can Google choose a thumbnail on its own? It can try, if it's able to access the video file. To control which frame appears, declare your own thumbnail in the page's structured data.

How do I create thumbnails automatically? Capture a frame at a chosen second, either with FFmpeg on your own servers or with an API such as Generate Thumbnail from Video, which takes a video link and returns a PNG.

How can I test the thumbnail API before integrating it? You can try it on the API page, send the request from your terminal, or open it in Voiden, the open-source API client. All three work on the free plan.

Why should I store the image myself? The API returns a temporary link. Google needs a thumbnail at an address that doesn't change, so save the image to your own storage and use that address.

Which API should I use for long videos? The job-based API processes the video in the background, so your app doesn't wait on the request.

Can I create an animated preview? Yes. The Generate Video Thumbnail API cuts a short clip (2 seconds by default) for hover previews. Google's thumbnail still needs to be a still image.

09About ApyHub

ApyHub is a curated API catalog and trusted operational layer for developers and AI agents. The catalog offers over 1,500 endpoints and capabilities, and it keeps growing. Every API is verified before listing and carries machine-readable certification for GDPR, SOC 2 and ISO 27001.

One subscription covers the whole catalog. Usage is measured in atoms, a per-call unit that reflects the compute work each request does. Every endpoint is MCP-ready by default, so AI agents can call it through ApyHub MCP without custom wrappers.

ApyHub is headquartered in Amsterdam, with offices in the Netherlands, Greece and India, and serves 65,000+ monthly developer workspaces. The free plan needs no credit card. API providers can publish their APIs to the catalog through the provider program.

Start free with ApyHub →