Instagram Reels Scraper: Views, Likes, Captions, No Login
Pricing
from $0.70 / 1,000 results
Instagram Reels Scraper: Views, Likes, Captions, No Login
Instagram reels scraper for public profiles and reel links: plays, views, likes, comments, caption, hashtags, length, audio title and artist, publish time, video link. Up to 12 latest reels per profile. No login. $1 per 1,000 results, platform usage included.
Pricing
from $0.70 / 1,000 results
Rating
0.0
(0)
Developer
One Dollar Store
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
12 hours ago
Last modified
Categories
Features
Share
Instagram Reels Scraper: plays, views, likes and captions from public profiles
$1 per 1,000 reels. Platform usage included. No rental, no minimum.
Give it Instagram usernames or reel links and get one row per reel: reel ID, shortcode, link, plays, views, likes, comments, full caption with hashtags and mentions, length in seconds, audio title and artist, publish time, location, tagged accounts, cover image and video file links. It reads the public pages Instagram shows to any visitor. No login, no cookies, no follower lists.
Store prices checked 6 November 2026: the four most used Instagram reels actors on the Store charge $1.50 to $75.00 per 1,000 results. This one costs $1.00 per 1,000 reels, platform usage included.
New to Apify? [Create a free account](https://www.apify.com?fpr=ymnoit) (referral link).What does Instagram Reels Scraper cost?
| Reels | This actor | Four most used rivals |
|---|---|---|
| 1,000 | $1.00 | $1.50 to $75.00 |
| 10,000 | $10.00 | $15.00 to $750.00 |
| 100,000 | $100.00 | $150.00 to $7,500.00 |
One flat price, platform usage included, so there is no separate compute or proxy bill. A weekly run over 100 creator profiles with their 12 latest reels each is 1,200 reels, about $1.20 a week or about $5.20 a month. Reels skipped by your date filter, profiles that do not exist and profiles Instagram refuses are not charged.
Why people switch
- Plays and views in one row. Plays come from the profile's reels tab, views from the reel's embed, likes and comments from the reel page, so you can compare reach and engagement without a second actor.
- Full reel records. Exact publish time, full caption, length, whether it has sound, the song or original audio with its artist and ID, location, tagged accounts and coauthors.
- Profiles or single reels. Mix usernames and reel links in one run, and keep only reels newer than a date you choose.
- IDs for joining. Reel ID, shortcode and owner ID stay the same over time, so repeat runs line up.
How to use Instagram Reels Scraper
- Open the actor, add one username per line (or a profile link), press Start.
- Or paste this input:
{ "usernames": ["natgeo", "peakdesign", "nasa"], "maxReelsPerProfile": 6, "maxItems": 18 }
- Download the results as JSON, CSV or Excel, or read them through the API.
Use it from code
curl -X POST "https://api.apify.com/v2/acts/one_dollar_store~instagram-reels-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"usernames": ["natgeo", "peakdesign"], "maxReelsPerProfile": 12, "maxItems": 100}'
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("one_dollar_store/instagram-reels-scraper").call(run_input={"usernames": ["natgeo", "peakdesign"], "maxReelsPerProfile": 12, "maxItems": 100})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["postedAt"], item["ownerUsername"], item.get("playCount"), item["url"])
Use it from an AI assistant
Claude, ChatGPT, Cursor and other assistants can call this actor through Apify's MCP server. Add it with this server address:
https://mcp.apify.com?tools=one_dollar_store/instagram-reels-scraper
Then ask, for example: "Get the 12 latest reels of @natgeo with plays, likes and captions."
Switching from another Instagram reels actor
Most Instagram reels actors take a list of usernames or reel links and a limit. Here they are usernames, reelUrls, maxReelsPerProfile and maxItems. The core output fields are shortcode, url, playCount, viewCount, likeCount, commentCount, caption, videoDurationSecs, postedAt and ownerUsername.
Input
| Field | Type | Default | What it does |
|---|---|---|---|
usernames | list of text | none | Usernames or profile links, for example natgeo, @natgeo or https://www.instagram.com/natgeo/. |
reelUrls | list of text | none | Links to single reels (/reel/... or /p/...). One row each. |
maxReelsPerProfile | number | 12 | Latest reels per profile, 1 to 12. |
newerThan | date | none | YYYY-MM-DD. Older reels are skipped and not charged. |
maxItems | number | 100 | Total reels for the run, 10 to 100,000. |
proxyConfiguration | object | Apify proxy | Data center proxy by default. Its cost is included in the price. |
Give at least one username or reel link.
What data does Instagram Reels Scraper return?
| Field | Meaning |
|---|---|
postId, shortcode, url | Instagram ID, the short code and the /reel/ link. |
type, productType | reel (or video for an older video post), and Instagram's own label (clips). |
ownerUsername, ownerId, ownerFullName, ownerIsVerified | The account that published it. For a collab reel this can be a partner of the profile you asked for. |
postedAt | Publish time, ISO 8601 in UTC. |
playCount | Plays as shown on the reels tab. |
viewCount | Views as Instagram reports them on the reel's embed. |
likeCount, commentCount, countsHidden | Counts; likes and plays are left out when the owner hides them. |
videoDurationSecs, hasAudio | Length in seconds and whether it has sound. |
audioTitle, audioArtist, audioId, usesOriginalAudio | The song, or the creator's original audio. |
caption, captionEdited, hashtags, mentions | Full caption, whether it was edited, its hashtags and @mentions. |
locationName, locationId | Tagged location. |
isPinned, isPaidPartnership, sponsors | Pinned to the reels tab, paid partnership label, brand partners. |
coauthors, taggedUsers | Usernames of collab coauthors and of tagged accounts. |
displayUrl, videoUrl, width, height | Cover image link, video file link, original size. |
requestedProfile, requestedUrl, feedPosition, source, scrapedAt | Which input found it, its position on the reels tab, which public pages it was read from, and when. |
Sample results
Real rows from test runs on 6 November 2026 (captions shortened).
[{"postId": "4002382901653263848", "shortcode": "DeLUgskI9Xo", "url": "https://www.instagram.com/reel/DeLUgskI9Xo/", "type": "reel", "ownerUsername": "adidasfootball", "postedAt": "2026-10-07T02:54:18.000Z", "caption": "don’t cry because it’s over, smile because it happened. thank you, Leo. 🥹🔟🩵\n\nno llores ...", "hashtags": ["yougotthis", "ad10s"], "playCount": 6979303, "viewCount": 1531284, "likeCount": 442030, "commentCount": 1788, "videoDurationSecs": 23.26, "audioTitle": "GRACIAS 🔟", "audioArtist": "adidasfootball", "usesOriginalAudio": true, "locationName": "Buenos Aires, Argentina", "taggedUsers": ["adidas", "adidasar", "leomessi", "afaseleccion"], "isPinned": false, "width": 1080, "height": 1920, "requestedProfile": "adidas", "feedPosition": 9, "source": "reels tab and card, post page, post embed"},{"postId": "4015904814218911265", "shortcode": "De7XCa_TJ4h", "url": "https://www.instagram.com/reel/De7XCa_TJ4h/", "type": "reel", "ownerUsername": "nasaadmin", "postedAt": "2026-10-25T18:35:11.000Z", "caption": "This is how @nasa does game day. Roll Tide! 🚀🏈", "playCount": 5114626, "viewCount": 885103, "likeCount": 58478, "commentCount": 259, "videoDurationSecs": 61.51, "audioTitle": "Original audio", "audioArtist": "nasaadmin", "usesOriginalAudio": true, "locationName": "Bryant-Denny Stadium", "taggedUsers": ["ua_athletics", "alabamafbl", "nasa", "univofalabama", "secrollins"], "isPinned": false, "width": 1916, "height": 1078, "requestedProfile": "nasa", "feedPosition": 2, "source": "reels tab, post page, post embed"},{"postId": "4019684678322905001", "shortcode": "DfIyerwhF-p", "url": "https://www.instagram.com/reel/DfIyerwhF-p/", "type": "reel", "ownerUsername": "peakdesign", "postedAt": "2026-10-30T23:45:41.000Z", "caption": "Happy Halloween from the PD fam.", "playCount": 83739, "viewCount": 41257, "likeCount": 744, "commentCount": 21, "videoDurationSecs": 48.83, "audioTitle": "Original audio", "audioArtist": "peakdesign", "usesOriginalAudio": true, "isPinned": false, "width": 1080, "height": 1920, "requestedProfile": "peakdesign", "feedPosition": 1, "source": "reels tab and card, post page, post embed"},{"postId": "4018797354013328178", "shortcode": "DfFouamPoMy", "url": "https://www.instagram.com/reel/DfFouamPoMy/", "type": "reel", "ownerUsername": "peakdesign", "postedAt": "2026-10-29T18:25:09.000Z", "caption": "11.10.26\n\nSign up to be notified.", "viewCount": 25045, "likeCount": 1662, "commentCount": 71, "videoDurationSecs": 15.02, "audioTitle": "Original audio", "audioArtist": "peakdesign", "usesOriginalAudio": true, "isPinned": false, "width": 1080, "height": 1920, "requestedProfile": "peakdesign", "feedPosition": 2, "source": "profile card, post page, post embed"}]
The last row came from the profile card because Instagram refused the reels tab in that run, so it has views but no plays.
Limits
- Up to 12 reels per profile. A visitor who is not logged in sees the first 12 reels on a profile's reels tab. Instagram asks for a log in after that, and this actor never logs in. For older reels, give their links in
reelUrls. - Sometimes fewer, and without plays. Instagram refuses many data center addresses on the reels tab. The actor tries 5 addresses; a capped share of profiles (20 percent of those started, none in a run of 1 to 4 profiles) gets one more try through residential proxy. When all of that is refused, the actor uses the videos among the profile's 6 latest posts from its public profile card. Those rows have views, likes, comments and the rest, but no
playCount, and a profile with no recent videos gives none. - Refused profiles are not charged. They are listed in the run summary, and the run stops after 6 profiles in a row that were refused on every try. Run them again later.
- No comments text, no likers, no follower lists. Only counts.
- No transcripts or audio files. The audio title and artist are returned, not the sound itself.
- Video and image links expire after a few days, as all Instagram media links do.
- Speed. Each reel is read from its public page and its embed. A 1,000 reel test on the default 256 MB, over a list of mostly small local businesses, delivered about 0.5 reels a second, so a big list takes a while. The price per reel is the same at any memory size.
- Every run writes a
RUN_SUMMARYrecord with counts, the profiles that were missing or refused, and how many reads each kind of page needed.
FAQ
What is the cheapest Instagram reels scraper on Apify? Store prices checked 6 November 2026: the four most used Instagram reels actors charge $1.50 to $75.00 per 1,000 results. This actor costs $1.00 per 1,000 reels, platform usage included.
How much does it cost to scrape 10,000 Instagram reels? $10.00 for the reels.
Do I pay for compute or proxy on top? No. Compute, data center proxy and the capped residential reads are all inside the $1 per 1,000 price.
What is the difference between plays and views?
Instagram shows two numbers. playCount is the play count on the profile's reels tab. viewCount is the view count Instagram reports on the reel's embed. In our test rows the view count was always the lower of the two. Both are returned exactly as Instagram gives them.
Can I get more than 12 reels per profile?
Not by username. Logged out, Instagram stops at 12. You can pass any number of reel links in reelUrls.
Is it legal? The actor reads public pages that Instagram shows to any visitor, with no login and no cookies, and returns only what the account holder published. Instagram's robots.txt asks automated visitors to stay away from all pages, and Instagram's Terms of Use (section 4.2) bar collecting information in an automated way without its permission. The actor reads at a polite rate and stops when it is refused, but whether you may use it is for you to judge. Captions, usernames and tagged accounts can be personal data under laws such as GDPR. You are responsible for lawful use, including a legal basis for storing the data and the rules on marketing messages.
Is this an official Instagram product? No. It is an independent tool and is not affiliated with or endorsed by Instagram or Meta.
Feedback and support
Found a problem or want a field added? Open an issue on the Issues tab of this actor and it gets read. If the actor saved you time, an honest rating on the Reviews tab helps other people find it.
Do I need an Apify account? Yes. Actors run from an Apify account, and a free account is enough to start: it includes $5 of platform usage every month. You can sign up here. This is a referral link and it costs you nothing.
More from The One Dollar Store
Every actor here costs $1 per 1,000 results, platform usage included. See the whole store: https://apify.com/one_dollar_store
Social media
- Threads Scraper: Public Threads posts by keyword or profile.
- Instagram Profile Scraper: Followers, posts and engagement for public profiles.
- TikTok Hashtag Scraper: Videos, views and creators for any hashtag.
- Pinterest Pin Search Scraper: Public pins with images and outbound links.
- Telegram Channel Scraper: Posts, views and media from public channels.
- Xiaohongshu Scraper: RedNote notes from the public explore feeds.
- Facebook Ad Library Scraper: Meta ads by keyword or advertiser page.
- Username Availability Checker: Check if a username is free across sites.
- Podcast Episodes Scraper: Episodes from Apple Podcasts and RSS feeds.
- Threads Profile Scraper: Public posts and follower counts for Threads profiles.
Changelog
- November 2026: first release.