Our competitor audits used to stop at likes, because likes are the number on every post. But likes scale with follower count and say nothing about whether anyone passed a post on. We wanted to know, for two competing brands: which format works, which posts get shared, and what they pin or hide.
How we solved it
We built the PRO Instagram Posts & Reels Scraper on Apify (disclosure: it's ours). Next to likes and views it returns engagement_rate, share_count, repost_count, is_pinned, caption_edited and is_off_grid, with no Instagram login. The input per brand, with reels that are off the grid but still public on the reels tab:
{
"usernames": ["nike"],
"maxPosts": 50,
"includeOffGridReels": true
}
maxPosts is one budget per run, spent account by account in input order, so one brand per run:
from apify_client import ApifyClient
import pandas as pd
client = ApifyClient("YOUR_APIFY_TOKEN")
posts = []
for brand in ["nike", "adidas"]:
run = client.actor("intropix/instagram-posts-reels-scraper-pro").call(run_input={
"usernames": [brand], "maxPosts": 50, "includeOffGridReels": True})
posts += list(client.dataset(run["defaultDatasetId"]).iterate_items())
df = pd.DataFrame(posts)
print(df.groupby(["username", "post_type"])[
["engagement_rate", "view_count", "share_count", "repost_count"]].median())
print(df.groupby("username")[["is_pinned", "is_off_grid", "caption_edited"]].sum())
Medians, not means: one viral reel drags a mean across the chart.
What came out
The metric half of a real Red Bull reel (17-10-2026):
{
"follower_count": 34172188,
"post_type": "reel",
"like_count": 46317,
"comment_count": 344,
"view_count": 1588744,
"share_count": 3450,
"repost_count": 937,
"engagement_rate": 0.001365,
"is_pinned": false,
"is_off_grid": false
}
0.001365 is 0.14%; accounts with tens of millions of followers often sit below 1%, so compare brands of similar size. The first table answers the format question, the second shows how much each brand pins, keeps off the grid, or rewrites after posting.
Cost
Each brand at 50 posts is $0.005 + $0.002 + 50 x $0.0039 = $0.202, so $0.404 for the pair. Off-grid reels bill as ordinary posts inside the same maxPosts.
The caveat
Every count is a snapshot. A post from this morning has not finished collecting likes, so leave the newest day or two out. When an owner hides counts, counts_hidden is true and the numbers are null. Photos and carousels have no view count at all.
To try it without code, the Audit a competitor's Instagram engagement task runs the PRO Instagram Posts & Reels Scraper on one account. If likes, comments, views and dates are enough, the standard Instagram Posts & Reels Scraper does it at $1.90 per 1,000 posts.
The rest is in the PRO actor overview.
Top comments (0)