Instagram 5 min read

Research Public Instagram Reels With an AI Skill

A copyable AI skill for comparing public Instagram Reels from selected profiles, pulling post context where needed, and reporting the limits behind play-count comparisons.

by
Workflow showing public Instagram Reels collected from selected profiles, compared fairly, and explained with view-count caveats

A Reel leaderboard is rarely useful on its own. A better research workflow compares the same number of recent public Reels from each selected profile, keeps the source URLs, and explains what the numbers do and do not mean.

Compare the same sample

The Instagram user Reels endpoint returns a paginated list of public Reels from a profile, including shortcode, Instagram play count, likes, comments, thumbnail, video versions, and owner information. It does not return Reel captions. Pull post detail for only the Reels that need caption context.

GET /v1/instagram/user/reels?user_id={instagram_user_id}&trim=true
GET /v1/instagram/post?url={instagram_reel_url}&trim=true

user_id is faster than handle; use max_id from the prior response to paginate. Important: these are Instagram-only views. A Reel cross-posted to Facebook can show combined views behind login, while this API returns just the Instagram count. Play counts can sometimes be inaccurate, so they should never be treated as a complete reach or revenue metric.

Copy the skill

name: instagram-reels-research
description: Compare a consistent recent sample of public Instagram Reels from selected profiles. Preserve source URLs, add post context only when needed, and clearly state Instagram play-count limits.
---

# Instagram Reels research

## Use this when

Use this skill for public content research across a specified list of Instagram profiles. It can identify observable format and topic patterns. It cannot reveal private analytics, prove total reach, or predict future performance.

## Inputs

```json
{
  "profiles": [
    {"handle": "example", "user_id": null}
  ],
  "recent_reels_per_profile": 12,
  "shortlist_detail_reels": 3,
  "research_goal": "Compare recent format and topic patterns"
}
```

Use the same `recent_reels_per_profile` for every profile. Default to 12. If a profile has fewer public Reels, use what is available and label the smaller sample.

## API contract

All requests use `https://api.scrapecreators.com` with an `x-api-key` from an environment variable or secret.

```text
GET /v1/instagram/user/reels?user_id={instagram_user_id}&trim=true
GET /v1/instagram/user/reels?handle={instagram_handle}&trim=true
GET /v1/instagram/post?url={instagram_reel_url}&trim=true
```

The Reels endpoint accepts either `user_id` or `handle`; prefer `user_id` when available. Use `max_id` from the response only when pagination is needed. The Reels list does not include descriptions, so use `/v1/instagram/post` only for shortlisted source URLs when caption context matters.

## Workflow

1. Resolve each provided profile to a public handle and user ID where available. Do not search for or infer private accounts.
2. Collect the newest public Reels until each profile has the selected sample size. Keep each Reel's shortcode or URL, date when returned, play count, likes, comments, thumbnail reference, and owner.
3. Normalize the same metrics across every profile. Calculate the median and average Instagram play count, plus interactions per play when the fields exist. Keep the sample size beside every statistic.
4. Use post detail for up to `shortlist_detail_reels` per profile when a caption, CTA, or fuller context changes the interpretation. Preserve the exact source URL.
5. Categorize observable patterns: opening visual, topic, structure, duration when returned, caption style, CTA, and recurring format. Require two or more supporting Reels for a profile-level pattern.
6. Flag outliers instead of letting one viral post decide the conclusion. Note a missing caption, unavailable post, or smaller sample.

## Interpretation limits

- `play_count` is Instagram-only and may omit views from a Facebook cross-post.
- Play counts can sometimes be inaccurate.
- A public Reel's views do not prove total reach, retention, follower growth, revenue, or conversion.
- Do not infer an audience's age, gender, location, income, health, or other sensitive traits from the profile or its posts.
- Do not call a Reel "successful" without defining the benchmark and sample.

## Output

Return a short report:

1. **Collection settings**: profiles, sample size, collection time, and missing data.
2. **Profile comparison**: median and average Instagram plays, interactions per play if available, sample size, and source URLs.
3. **Observed patterns**: factual format/topic notes with two or more linked examples.
4. **Outliers and caveats**: one-off posts, cross-post uncertainty, small samples, and claims that need human review.

Example profile result:

```json
{
  "profile": "example",
  "sample_size": 12,
  "median_instagram_plays": 18300,
  "average_instagram_plays": 24600,
  "patterns": [
    {
      "observation": "Several recent Reels open with a demonstration before the creator appears on camera.",
      "supporting_reel_urls": ["https://www.instagram.com/reel/ABC/"]
    }
  ],
  "caveats": ["Instagram-only play counts; Facebook cross-post views may not be included."]
}
```

## Rules

- Public data only.
- Never fabricate a Reel, metric, caption, source URL, or comparison.
- Never imply access to private insights or logged-in view counts.
- Preserve source URLs and collection time for every conclusion.
- Prefer a smaller honest sample to padding the report with weak matches.
- Treat observed patterns as research inputs for original work, not a template to copy.

Use the result wisely

The most useful output tells you which patterns appeared repeatedly, which examples are merely outliers, and where the public numbers stop being reliable. Keep it as a research note, not a prediction engine.

For a Reel that needs more context, pull the public post detail instead of guessing from its thumbnail. For speech in an under-two-minute video, the Instagram transcript endpoint can return an AI transcription, with a clear note that no speech may return null.

FAQ

Frequently asked
questions

Can't find what you're looking for? Email me.

Adrian Horning

Written by

Adrian Horning

Founder of ScrapeCreators. I write about social data APIs, scraper reliability, and turning public creator data into useful products.

Connect

ScrapeCreatorsScrapeCreators
Social Media Scraping API
for Developers

Real-time data from TikTok, Instagram, YouTube, X, Facebook, Reddit, and more.

Real-time Data

Fresh, accurate, always up-to-date.

No Proxies

We handle the infrastructure.

Developer First

Simple API. Powerful results.

TikTok logoInstagram logoYouTube logoX logoFacebook logoReddit logo
{200 OK
"platform": "youtube",
"type": "video",
"title": "Never Gonna Give You Up",
"views": 12504321,
"transcript": "We're no strangers to love...",
}
Success124ms
Purple gift box representing 100 free ScrapeCreators credits
Get 100 credits on us - instantly.

No credit card required. Start building for free.

Try the API, on us.

New developers get 100 free credits automatically when they sign up. No credit card required.

Get started free
Trusted by 10,000+ developers
99.9% uptime
Secure API access