How to Track Competitors on Instagram

To track competitors on Instagram, collect each rival account's recent posts every week with apidojo's Instagram Scraper on Apify, store them with their likes, comments, plays and post dates, and compare the accounts on posting frequency, median engagement, formats and partnerships.

Cover card reading 'How to Track Competitors on Instagram'

To track competitors on Instagram, collect each rival account’s recent posts every week with apidojo’s Instagram Scraper on Apify, store them with their likes, comments, plays and post dates, and compare the accounts on posting frequency, median engagement, formats and partnerships. Five competitors with 30 posts each cost about $0.08 a week at $0.50 per 1,000 posts. This guide extends the recurring pattern in how to monitor Instagram hashtags and mentions.

Instagram Insights only covers your own account, so competitor tracking runs on public numbers. This guide covers what to measure, how to collect it, and how to read the results. Your own analytics are covered in how to see Instagram Insights. The same data checks partners before you sign them, in how to vet Instagram influencers with data.

What Should You Track About Instagram Competitors?

Track 6 things per competitor, all from public post data. The table maps them to fields in the Instagram Scraper’s output (Apify).

Metric Fields
Posts per week Count by createdAt week
Median engagement likeCount, commentCount, owner.followerCount
Video performance video.playCount
Format mix isVideo, isCarousel
Paid partnerships isPaidPartnership
Collaborations coowners

How Do You Collect Competitors’ Posts?

List each competitor’s profile URL and run the Instagram Scraper weekly, keeping posts from the last couple of weeks.

import os
import pandas as pd
from apify_client import ApifyClient

COMPETITORS = ["rival1", "rival2", "rival3", "rival4", "rival5"]
client = ApifyClient(os.environ["APIFY_TOKEN"])

run = client.actor("apidojo/instagram-scraper").call(run_input={
    "startUrls": [f"https://www.instagram.com/{c}/" for c in COMPETITORS],
    "maxItems": 30 * len(COMPETITORS),
})
df = pd.json_normalize(list(client.dataset(run.default_dataset_id).iterate_items()))

df["week"] = pd.to_datetime(df["createdAt"]).dt.to_period("W")
df["er"] = (df["likeCount"].fillna(0) + df["commentCount"].fillna(0)) / df["owner.followerCount"] * 100

report = df.groupby("owner.username").agg(
    posts=("id", "count"),
    median_er=("er", "median"),
    video_share=("isVideo", "mean"),
    paid_posts=("isPaidPartnership", "sum"),
)
print(report.sort_values("median_er", ascending=False))

Each profile should return at least 10 posts (Apify). Store each week’s results so you can compare over time. The engagement formula is explained in how to calculate Instagram engagement rate. Competitors on other platforms are tracked in how to track competitors on TikTok and the competitor tweet tracker.

How Do You Track Competitors’ Follower Growth?

Record each competitor’s follower count weekly; the owner.followerCount on their posts, or a profile lookup with apidojo’s Instagram User Scraper, gives you the number. A profile lookup costs $0.01 plus $0.0005 for the profile returned (Apify).

What Should You Look For?

Look for patterns you can act on, not just who’s ahead. Listed below are the 5 questions a weekly report should answer.

  1. Which formats win for each competitor: reels, carousels or images?
  2. How often do they post, and does frequency track with engagement?
  3. Which posts got their best engagement this month, and why?
  4. Who are they partnering with, from paid partnerships and collaborations?
  5. What do commenters say on their top posts? See how to analyse Instagram comment sentiment.

What Does Competitor Tracking Cost?

At $0.50 per 1,000 posts, 5 competitors with 30 posts each cost $0.075 a week; 20 competitors with 50 posts each cost $0.50 a week. Running it monthly instead of weekly cuts that further.

Questions people ask

Can you see a competitor's Instagram Insights?

No, Insights are private; public likes, comments, plays and follower counts are enough to benchmark.

Can you track competitors' ads?

Ads are in Meta's Ad Library; see how to find Instagram ads in the Meta Ad Library.

How often should you check competitors?

Weekly suits most brands; daily during launches.

Where do you start?

At how to scrape Instagram profiles and posts.