Adspy Social posts: what brands post on TikTok, YouTube and Instagram
Adspy Social posts collects the organic posts of brands' TikTok, YouTube and Instagram accounts and reads them next to the brands' ads. It shows each post's public counts, the posts far above the account's usual views, and the posts a brand later ran as ads, in Claude, Claude Code, Codex or any remote MCP client.
- Platforms
- TikTok, YouTube and InstagramOrganic posts of brand accounts; TikTok ads are not covered
- History
- Last 12 monthsWhat a first collection aims to cover
- Refresh
- Every 6 hours to 7 daysFollowed brands' accounts, by how often they post
- Where
- In your AI assistantEvery plan; reading posts is included
claude mcp add --transport http --scope user adspy 'https://www.adspy.sh/mcp' && claude mcp login adspy
- search_social_accounts{ query: "gymshark", platform: "youtube" }Free0
- request_social_fetch{ platform: "youtube", url: "<the channel link>" }Up to 400 credits400
- get_fetch_job{ jobId }Free400
- list_social_posts{ brandKey, sort: "breakouts", limit: 20 }Included400
- get_brand_social{ brandKey, range: "90d" }60 credits460
Session, at most460 creditsof 2,000 a month on Starter
What does Adspy collect from a brand's TikTok, YouTube and Instagram accounts?
Adspy collects the public posts of a brand's TikTok, YouTube and Instagram accounts with the counts each platform shows, and nothing private. Each post keeps its thumbnail, link, date, format and caption, plus its counts at about one day and seven days after it was posted. Adspy keeps no comment text and no commenter names.
- Post
- Thumbnail, link to the post, publication date, format (video, Short, live or photo post; Reel, photo or carousel on Instagram), caption and hashtags.
- Counts on TikTok
- Views, likes, comments, shares and saves. TikTok rounds counts from 10,000 up (16.5K, 1.8M), and Adspy marks rounded values.
- Counts on YouTube
- Exact views and likes. Adspy does not collect comments, shares or saves on YouTube.
- Counts on Instagram
- Exact likes and comments, and views on Reels only, which Meta counts with paid views. A like count the owner hides stays not public, never zero, and Instagram shows no shares or saves. Adspy reads Instagram through Meta's official API, for professional accounts only.
- Snapshots
- The counts read about one day and seven days after the post went up, kept with their dates.
- Account
- Handle, name, verified badge (TikTok and YouTube), followers and the Adspy brand the account belongs to.
How does Adspy find breakouts and keep paid reach apart?
Adspy calls a post a breakout when its views reach at least 2.5 times the account's usual views at the same age and stand out from the account's usual spread. A post with views that high but engagement per view far below the account's usual is labelled paid reach, listed apart and left out of every organic number.
Engagement per view is likes, comments and shares divided by views on TikTok, and likes divided by views on YouTube. Adspy counts it on posts at least seven days old with 50 views or more, and reports each median with a 95% confidence interval and the number of posts behind it.
Instagram engagement is likes and comments divided by the account's followers, on every format, because photos and carousels have no views. Adspy never compares it with engagement per view. On Instagram, breakouts and paid reach are read on Reels, the only posts with views.
Paid reach is a label read from public counts. Adspy does not see what a brand spent on a post, who saw it or why, and it never turns a count into spend, reach or audience.
Posting cadence compares the last 30 days with the 60 days before, and Adspy says up or down only when the change is clear; otherwise it reports no clear change.
How does Adspy link a post to the ads that reused it?
Adspy compares each post's thumbnail with the images of the brand's ads in its library, from Meta and Google, and links the two when they are the same or nearly the same picture. Each pair says which came first, the post or the ad.
An ad first seen up to two days before and up to 180 days after a post makes it a post later run as an ad; an ad seen earlier makes it an ad later posted organically. Beyond 180 days there is no link. Each link records the days between the two, how long the ad ran and the post's counts before the ad.
Thumbnails with too little to compare, such as black, white or flat images, and cards that an account reuses on many posts are never linked. Adspy keeps precision ahead of recall: some real reuses, often ads cropped to a square or 4:5 frame, stay unlinked.
How does Adspy compare brands' organic posts?
Adspy compares two to five brands on TikTok, YouTube or Instagram, one platform at a time, over 30 or 90 days. Each brand's median engagement (per view, or per follower on Instagram) and views per post are set against the median of the other brands' medians, with a bootstrap 95% confidence interval and a p-value adjusted across brands, and Adspy gives a verdict only when the gap is clear.
| Verdict | When |
|---|---|
| Above | The brand's median is higher than its peers' and the gap holds at 5% after Holm's correction across the brands |
| Below | The same test, with the brand's median lower |
| No clear gap | The difference could come from the posts sampled; Adspy does not rank the brand |
| Not enough posts | Fewer than 8 settled posts on the platform in the window |
Where can you use Social posts, and what does it cost?
Adspy Social posts runs in your AI assistant on every plan, and reading posts is included, with fair use: posts, their AI tags and the posts a brand later ran as ads cost no credits. Starter reads the posts of its one source (Instagram with Meta, YouTube with Google, or TikTok); Pro and above read all three. On Starter and Pro, credits pay for reports and new accounts; Unlimited has no credit count (fair use). Finding an account and checking a collection's progress are free, an account Adspy already collects costs nothing, and every collection you request comes with the account's 20 latest posts.
| Action | Credits |
|---|---|
| Find a brand's account | Free |
| Collect a new account | 400 credits, with its 20 latest posts; 0 for an account Adspy already collects |
| Read posts | Included |
| A post in detail, with AI tags | Included |
| Posts later run as ads | Included |
| A brand's social report | 60 credits, reused for 24 hours; free for 24 hours after the brand's Brand Full Analysis |
| Brand Full Analysis: ads, posts and how they connect | 90 credits per brand and range; the brand's social report is then free for 24 hours |
| Compare brands | Up to 60 credits per brand |
How to use Social posts in Adspy
Adspy Social posts runs in Claude, Claude Code, Codex or any remote MCP client: find the brand's account for free, collect it once for 400 credits, then read its posts, included in your plan, and its social report for 60 credits. A new collection starts once you say yes and reports its progress, for free, until the posts are stored, then shows the account's 20 latest posts at once.
In your AI assistant
- Connect Adspy to your AI assistant once: Claude, Claude Code, Codex or any remote MCP client. The setup guide has the steps for each.
- Ask for a brand's posts, for example "show me Gymshark's TikTok posts that broke out this quarter". The assistant finds the account, asks before collecting it, follows the collection and shows the 20 latest posts when it completes.
- When TikTok search cannot find the brand, the assistant asks you for the profile link instead of guessing a handle.
- On Instagram, the assistant needs the account's exact handle: the one on the brand's website, or the @handle or profile link you give. Meta paces Instagram reads: Adspy can start about 10 new Instagram collections an hour across all users, so a new collection may wait its turn, and the assistant says so.
search_social_accountsfinds a brand's TikTok, YouTube or Instagram account.Freerequest_social_fetchcollects an account's posts once you say yes; its 20 latest come with it.400 credits, new accounts onlylist_social_postslists posts by date, engagement or breakouts.Includedfind_posts_run_as_adspairs posts with the ads that reused them.Includedget_brand_sociala brand's social report over 30 or 90 days.60 creditscompare_socialtwo to five brands on one platform.Up to 60 credits per brand
What Adspy Social posts does not do
No TikTok ads
Adspy collects the organic posts of brands' TikTok accounts, not TikTok ads. Its ads come from Meta and Google only.
TikTok, YouTube and Instagram only
Adspy collects organic posts on TikTok, YouTube and Instagram. It does not collect organic posts from other platforms.
Instagram: professional accounts, at Meta's pace
Adspy reads Instagram through Meta's official API: professional (business or creator) accounts only, found by their exact handle. Meta paces Instagram reads: Adspy can start about 10 new Instagram collections an hour across all users. Personal and private accounts cannot be read.
Brand accounts, not social listening
Adspy reads the accounts of brands, one account at a time. It does not search posts by keyword across TikTok, YouTube or Instagram, and it keeps no comment text or commenter names.
No spend, reach or audience
Counts are the public ones the platforms show. Paid reach is a label read from those counts, not spend, and Adspy shows no reach, audience or conversions.
History builds from the first collection
A first collection aims to cover the last 12 months. When a platform does not answer that far back, older posts are added as Adspy keeps reading the account, and Adspy says so while the history is not complete.
Questions about Adspy Social posts
Does Adspy cover TikTok ads?
No. Adspy collects the organic posts of brands' TikTok accounts, not TikTok ads. Its ads come from Meta (Facebook and Instagram) and Google's Ads Transparency Center, including YouTube.
How fresh are the counts?
Adspy reads the accounts of followed brands again every 6 hours to 7 days, more often for accounts that post more (Instagram accounts as Meta's hourly pace allows, after new collections); other accounts every 30 days. Each post shows when its counts were read.
Does paid reach mean the brand paid for the post?
Not necessarily. Paid reach marks posts whose views are far above the account's usual while engagement per view is far below it. Adspy keeps them apart so they do not distort the organic numbers; it has no spend data.
Can I add any account?
Any public TikTok or YouTube account of a brand, from its link or handle, and in Claude or Codex any professional Instagram account, from its exact handle or profile link. A private or missing account stops before anything is charged, and an account Adspy already collects costs nothing.
Is Social posts on the Starter plan?
Yes, on its one source. Starter reads the posts of its one source (Instagram with Meta, YouTube with Google, or TikTok); Pro and above read all three. Reading posts is included on every plan; reports and new accounts are paid in credits: 2,000 credits a month on Starter and 6,000 on Pro; Unlimited has no credit count (fair use).
Sources and method
Counts are the public counts TikTok, YouTube and Instagram show for each post; TikTok rounds counts from 10,000 up, and Adspy marks the rounded values. Instagram counts come from Meta's official API: views on Reels only, paid views included.
Statistics follow Adspy's method social-v1: medians with distribution-free 95% intervals, a Poisson rate ratio for cadence, and a bootstrap with Holm's correction for comparisons. Each statistic was checked against SciPy to within 1e-9.
Post-ad links follow method match-v1, which keeps precision ahead of recall: thumbnails with too little to compare and cards an account reuses on many posts are never linked.
Prices come from the published credit tariff (2026-10-23-v2).
Corrections: info@adspy.sh
Have a brand in mind?
Add Adspy to your assistant with this URL, sign in, and ask about its ads. Connecting takes a few minutes, and no ad account.
https://www.adspy.sh/mcp

