How to analyse a competitor ad from Meta Ads

A facebook.com/ads/library link is a video like any other here, so an advert is something you watch rather than something you describe from its caption. Pair it with the ad-teardown playbook and the answer keeps the measurements separate from the reading: cut times, when the logo lands and when the claim appears are counted, and what they add up to stays yours to decide.

Last updated

The call

Copy this as it stands. “Why does this ad work, and what is the hook?” is the question it answers.

Ask an agenttext
Take this ad apart: hook, beats, claims, and when each one lands.
https://www.facebook.com/ads/library/?id=1234567890
MCP tool callstext
get_playbook(task: "ad-teardown")
watch_video(url: "https://www.facebook.com/ads/library/?id=1234567890")
TypeScript SDKts
const ad = await playhead.ask({
  url: "https://www.facebook.com/ads/library/?id=1234567890",
});

// The first three seconds are where the hook lives. This question carries the
// session, so it reads what was already found rather than watching again.
const hook = await playhead.ask({
  session_id: ad.session_id,
  question: "what happens in the first three seconds, and when does the hook end",
});

Watch out for

Everything the API can refuse, and what to send instead, is on the errors page.