For media buyers and creative strategists

How to analyse a competitor's video ad

Give an AI agent the ad's link and ask what happens in it. With Playhead connected, the agent reads the whole ad frame by frame and answers with the second of every moment it names: where the hook lands, how often the creative cuts, when the offer first appears on screen and how long the price stays up. A Meta Ad Library link works the same as a TikTok or an Instagram link, because both are a video the tool can fetch.

By The Playhead team

We build the video layer these numbers are measured on. Every figure about Playhead comes from the source file it lives in.

Published 6 min read

The short version

  • A Meta Ad Library link is a video like any other. Paste it and ask, without downloading anything.
  • The answer carries the second of every moment it names, to 2 decimal places, so a claim in a brief can be checked by scrubbing to it.
  • One first look costs about 2,500 tokens of an agent's context, whatever the ad's length.
  • One reading covers the whole ad, from second 0 to the end, and a second question about the same ad costs a fraction of the first.
  • What could not be read is named in an unanswered list, so a quiet ad and an unreadable ad never look the same.

What the answer actually contains

Not a summary of the ad. The moments, with the second each one happens at.

A reading of a 21 second direct-response ad
The hook is a hand pulling a shirt over the lens at 0:00.4, before any product is visible. The first cut is at 1.24s and the ad holds about 24 cuts a minute after that. The product name appears on screen at 3.2s, small, in the lower third. The offer, 40% off, appears at 11.8s and stays up for 4.1s, which is the longest any text is held. The price is never spoken, only shown. The call to action arrives at 18.6s over the last shot.

Every second in that paragraph is elapsed time from the start of the file, so each one can be checked by scrubbing to it.

That is the difference from watching the ad yourself and taking notes. The notes are the same. The times are exact, and they arrive in the shape a brief needs.

Every number in this article can be checked. The detail levels and what each one costs are in the session and detail level reference, the platforms it fetches from are in supported platforms, and the fields an answer comes back with are in the API reference.

How to do it, in four steps

This works in Claude, Claude Code, ChatGPT, Cursor or any client that speaks MCP.

  1. Connect Playhead to your agent

    Add the connector once. It is a remote MCP server, so there is nothing to install and it follows you to the phone app.

  2. Copy the ad's link

    From the Meta Ad Library, from TikTok, from Instagram, or from wherever the creative is public. A facebook.com/ads/library/?id=… link is a video like any other.

  3. Ask what happens in it

    Paste the link and ask. Without a question the tool covers the complete ad; with one it answers that instead. Start broad, because the first look is what makes every later question cheap.

  4. Ask the follow-ups

    How long is the price up. What is the first frame. Is the logo ever full-screen. Each of those reads what the first look already found, so it costs a fraction of it.

The same thing from your own code

For a dashboard, a scheduled report, or a batch of ads rather than one.

One ad, and the session that makes the next question cheapts
import { Playhead } from "@playhead/sdk";

const playhead = new Playhead();

const ad = await playhead.ask({
  url: "https://www.facebook.com/ads/library/?id=…",
  question: "what is the hook, when does the offer appear, how long does the price stay up",
});

console.log(ad.answer);
console.log(ad.unanswered);   // what the ad does not show. Read this.

// Keep it. Every later question about this ad is a fraction of the first.
const session = ad.session_id;

What goes wrong the first time

A short answer is not always a quiet ad. Read unanswered before you trust one. It names what the question asked for and the video does not show, so an ad nobody could read and an ad with nothing in it never look the same.

A vertical ad is not a wide ad with bars. A 16:9 creative reposted into a 9:16 frame carries letterbox bars, and the bars are not the picture. The grid is chosen after they are found, so the tiles hold the ad rather than the padding you paid for.

One ad proves nothing about a rule. A hook that lands at 0.4 seconds in one creative is a fact about that creative. See the next article for what changes when the question is asked across a whole library.

The verdict

Reading one competitor ad by hand takes about ten minutes and produces notes nobody else can check. The same reading through an agent takes about a minute and produces the same notes with a second attached to every claim. The second is what makes it usable in a brief, and it is the only part a person cannot produce reliably from watching.

Common questions

Can an AI analyse a Facebook or Meta Ad Library video?

Yes. A facebook.com/ads/library/?id=… link is a video like any other: the tool fetches it, reads it frame by frame, and answers with the second of every moment it names. Nothing is downloaded on your side.

Does this work for TikTok and Instagram ads?

Yes. TikTok, Instagram, X, Facebook, Vimeo, Twitch, Dailymotion, Reddit and YouTube all work from the link, and a file on your own machine works from its path.

How much of an agent's context does one ad cost?

About 2,500 tokens for a first look, whatever the length of the ad. The frames are read on Playhead's servers, so what reaches the agent is prose with timestamps rather than pictures.

Can it tell me why the ad works?

Of one ad, no. The reading tells you what that ad does and when, which is the part that is in the file; a video carries no spend and no ROAS. Of a set, yes: mark the ads that won, add one or two that did not, and what the winners share is counted rather than judged. See why did your ad win for how that is read.

Written by

The Playhead team

We build the video layer these numbers are measured on. Every figure about Playhead comes from the source file it lives in.

How we write these articles, and how to send a correction