Hook rate, hold rate and thumbstop rate: formulas and where to find the numbers
Hook rate is the share of impressions where a video played for at least 3 seconds: 3-second video plays divided by impressions. Thumbstop rate is the same number under another name. Hold rate has two common definitions, ThruPlays divided by 3-second plays or ThruPlays divided by impressions, so pick one and write it next to the number. Meta reports the raw counts and leaves the ratios for you to calculate.
The three terms
Meta defines the counts these ratios use. A 3-second video play is a video that plays for at least three seconds, or for nearly its whole length if it is shorter than three seconds. A ThruPlay is a video played to completion or for at least 15 seconds.1
Hook rate, thumbstop rate and hold rate are industry terms. Meta does not report them as metrics.
| Term | Formula | Question it answers |
|---|---|---|
| Hook rate | 3-second video plays / impressions | Did the opening earn a watch? |
| Thumbstop rate (also thumbstop ratio) | Same as hook rate | Same question. Motion's glossary says thumbstop rate and hook rate are the same metric.3 |
| Hold rate, version A | ThruPlays / 3-second video plays | Of the people who stopped, how many stayed to 15 seconds or the end? |
| Hold rate, version B | ThruPlays / impressions | How much of the full audience stayed to 15 seconds or the end? |
Hold rate is where definitions split. Adrio uses version A;4 Biddyco uses version B and mentions that some teams use A.5 Neither is wrong. Version B mixes the opening and the body into one number. Version A isolates the body. Choose one, name it in the column header, and keep it fixed so week-to-week numbers compare.
A worked example
Illustrative numbers for the arithmetic, not from a real account.
An ad has 50,000 impressions, 12,000 3-second plays and 3,000 ThruPlays.
- Hook rate: 12,000 / 50,000 = 24%
- Hold rate A: 3,000 / 12,000 = 25%
- Hold rate B: 3,000 / 50,000 = 6%
Same ad, two hold rates. This is why the header has to say which one it is.
Where to find the counts in Meta
In Ads Manager, open Columns and choose Video engagement to see 3-second video plays and ThruPlays.1 Ads Manager does not show the ratios by default, so you add them as custom metrics or calculate them in a spreadsheet (Biddyco and Spark UGC both say this).56
Pulling them with Hopkin and Claude
Hopkin connects Claude, ChatGPT and other AI assistants to your Meta Ads account, read-only. Its creative report tool, meta_ads_get_ad_creative_report, returns ThruPlays, 25/50/75/95/100% completions and average watch time for video ads.7 The same report returns 3-second plays as the video_view row inside the actions array, which the docs page does not name.
On 2026-11-06 we called meta_ads_get_ad_creative_report on a connected Meta ad account for Oct 8 to Nov 6, 2026 at level ad_id. The video ads in the top 3 by spend each had a video_view row in actions. Image ads had none. On the same account and window we also called it at the default ad_name level; the video_view row was there too.
What to know before you rely on it
- Hopkin's docs do not list the
video_viewrow. It appears because the tool always requests theactionsarray and returns it in full. Call it "3-second views (Meta's video_view action)". - If you pass
action_types, the row can disappear. Passing["purchase"]removed it in our test; passing["video_view"]returned only that row. Leaveaction_typesunset when you want hook rate. - Image ads have no
video_viewrow, so skip them. - The row comes back at both
ad_idand the default level,ad_name. Atad_nameit is summed across ads that share a name. Average watch time is left out at that level because it cannot be summed. - Do not treat the 25/50/75% completion fields as a subset of 3-second plays. In our test, plays at 25% were higher than
video_viewon the top ad. Meta says milestone metrics can include people who skip ahead to that point.2
The prompt
Use my Meta Ads connection (read-only). Call meta_ads_get_ad_creative_report for ad account [ACCOUNT_ID], time range [YYYY-MM-DD] to [YYYY-MM-DD], level ad_id. Leave action_types unset. Follow nextCursor until you have every row. For each video ad, take impressions, the video_view row in actions (3-second views) and ThruPlays. Skip ads with no video_view row. Calculate hook rate = video_view / impressions and hold rate = ThruPlays / video_view. Also show ThruPlays / impressions. Show the ten ads with the most spend: ad name, spend, impressions, hook rate, hold rate, CPA for [CONVERSION_EVENT]. Sort by hook rate, lowest first. Mark any ad under [MIN_IMPRESSIONS] impressions as too small to judge. Name the formula you used in each column header.
To put hook rate and hold rate next to spend and CPA in a weekly review, use the creative performance report template.
How to read the numbers
Our reading, not a sourced rule.
- Compare an ad with your other ads in the same account, placements and dates. A hook rate means little without that.
- A low hook rate points at the first seconds: the first frame, the first line, the first motion. A fine hook rate with a low hold rate points at the body of the ad. Fix the weaker of the two first.
- Published benchmarks differ by vendor and by the accounts in their data, so this page gives no target. Use your own ads as the baseline.
- Wait until an ad has enough impressions that a handful of extra plays does not move the ratio.
Frequently asked questions
What is hook rate?
The share of impressions where the video played for at least 3 seconds: 3-second video plays divided by impressions.
Is thumbstop rate the same as hook rate?
Yes. Motion's glossary calls them the same metric, and both divide 3-second plays by impressions.
What is hold rate?
A measure of how many viewers stay past the opening. Two formulas are in use: ThruPlays divided by 3-second plays, and ThruPlays divided by impressions. Name the one you use.
Does Meta show hook rate in Ads Manager?
Ads Manager shows 3-second video plays and ThruPlays under Video engagement, and you calculate the ratios yourself.
Can Claude calculate hook rate from my Meta ad account?
Yes, with a Meta Ads connection such as Hopkin. The creative report returns 3-second views as the video_view row in actions. Use the prompt above and leave action_types unset.
What is a good hook rate?
It depends on the account, format and placement, and published benchmarks disagree. Compare each ad with your other ads.
Sources
- About video ad metrics on Facebook and Instagram, Meta Business Help. Read .
- About video ad metrics calculation, Meta Business Help. Read .
- Thumbstop rate / hook rate glossary, Motion. Read .
- Thumbstop rate vs hook rate vs hold rate, Adrio. Read .
- Hook rate and hold rate on Meta, Biddyco. Read .
- Creative metrics glossary, Spark UGC. Read .
- meta_ads_get_ad_creative_report, Hopkin docs. Read .