Instagram Comments Scraper - No cookies
Pricing
from $1.50 / 1,000 comments
Instagram Comments Scraper - No cookies
Scrape comments from public Instagram posts, reels, and videos. Get clean JSON with text, likes, and timestamps — no authentication needed.
Pricing
from $1.50 / 1,000 comments
Rating
0.0
(0)
Developer
Rogde
Actor stats
0
Bookmarked
1
Total users
0
Monthly active users
6 hours ago
Last modified
Categories
Share
Instagram Post Comments Scraper
📌 Overview
The Instagram Post Comments Scraper extracts comments from any public Instagram post, reel, or video — no login or cookies required. Simply provide a post URL and receive clean, structured JSON data for every comment, complete with engagement metrics and timestamps.
Whether you're doing sentiment analysis, brand monitoring, audience research, or competitive intelligence, this Actor gives you instant access to Instagram comment data at scale.
🚀 Features
- No authentication required — works with all public posts ✅
- Supports all post types —
/p/,/reel/, and/tv/URLs - Rich comment metadata — text, like counts, timestamps, and more
- Pagination support — scrape hundreds or thousands of comments
- Resume capability — use cursor to continue from where you left off (paid users)
- Lightweight & fast — optimized for high-volume comment extraction
- Free tier available — try before you subscribe
🔧 How It Works
- Paste a public Instagram post URL (any
/p/,/reel/, or/tv/link) - Set a max items limit (optional, default: 12)
- Optionally provide a cursor to resume a previous scrape
- The scraper fetches pages of comments and returns structured JSON
- Paid users receive a final cursor record to resume in future runs
📥 Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
post_url | String | ✅ Yes | — | Full Instagram post URL. Supports /p/, /reel/, and /tv/ formats |
max_items | Integer | ❌ No | 12 | Maximum number of comments to scrape (minimum: 12) |
cursor | String | ❌ No | — | Pagination cursor from a previous run to resume scraping from that point. Leave empty to start fresh |
Example Input
{"post_url": "https://www.instagram.com/reel/DHnMo4KoIqD/","max_items": 100}
Supported URL Formats
https://www.instagram.com/p/DHnMo4KoIqD/https://www.instagram.com/reel/DHnMo4KoIqD/https://www.instagram.com/tv/DHnMo4KoIqD/
📤 Output Data Structure
The dataset contains two record types: post metadata (one record per run) and comments (one record per comment).
🗂️ Record Types
record_type | Description |
|---|---|
post-metadata | Summary info about the scraped post (appears once) |
comment | Individual comment record |
cursor-data | Pagination cursor for resuming (paid users only) |
📋 Post Metadata Record
| Field | Type | Description |
|---|---|---|
record_type | String | Always "post-metadata" |
id | String | Unique Instagram media ID |
code | String | Instagram shortcode (used in post URLs) |
url | String | Direct link to the post on Instagram |
caption | String | Post caption text including hashtags |
comment_count | Integer | Total number of comments on the post |
like_count | Integer | Total number of likes on the post |
post_time | String | ISO 8601 timestamp of when the post was created |
scraped_at | String | ISO 8601 timestamp of when the data was scraped |
📦 Example Post Metadata Record
{"record_type": "post-metadata","id": "3595898413123668611_56114511320","code": "DHnMo4KoIqD","url": "https://www.instagram.com/reel/DHnMo4KoIqD/","caption": "HE KNOWS… #qoqsik #portugal #irl #kickstreaming #twitch #streaming #kick","comment_count": 1489,"like_count": 227195,"post_time": "2025-03-25T06:35:00+00:00","scraped_at": "2026-04-15T13:39:48.888672+00:00"}
💬 Comment Record
| Field | Type | Description |
|---|---|---|
record_type | String | Always "comment" |
id | String | Unique Instagram comment ID |
text | String | Comment text content (may be empty for emoji-only) |
like_count | Integer | Number of likes the comment received |
comment_time | String | ISO 8601 timestamp of when the comment was posted |
scraped_at | String | ISO 8601 timestamp of when the comment was scraped |
📦 Example Comment Records
{"record_type": "comment","id": "18124535755596209","text": "Im in love 😍😍","like_count": 80,"comment_time": "2026-04-03T21:47:15+00:00","scraped_at": "2026-04-15T13:39:54.343066+00:00"}
{"record_type": "comment","id": "18077509748435479","text": "I thought she was innocent but 🙂","like_count": 137,"comment_time": "2026-04-03T11:10:16+00:00","scraped_at": "2026-04-15T13:39:54.401714+00:00"}
🔖 Final Cursor Record (paid users only)
The last record in the dataset contains pagination metadata for resuming:
{"record_type": "cursor-data","cursor": "IntcImNhY2hlZF9jb21tZW50c19jdXJzb3JcIjpcIjE4MTI1MDU1NTExNTIwMTkzXCIsXCJiaWZpbHRlcl90b2tlblwiOlwiR2dZWTRRUUJFZ0RRQUNnQUdBQVFBQWdBQ0FBSUFBZ0FDQUFCQVFFQkFRRUJBUUVBQVFFQkFRRUJBUUFCQVFBQkFRRUJBQUVCQVFFQkFRRUFBUUFCQUFFQkFRRUJBUUVCQVFFQUFRRUJBUUFCQVFBQUFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUVBQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBQUVCQUFFQkFRRUJBUUVCQVFFQkFRRUJBQUVCQUFBQkFRRUJBUUVCQUFFQkFRRUJBUUVCQUFFQkFRRUJBUUVCQVFFQkFBRUJBUUVBQUFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRQUJBUUVCQVFFQkFRQUJBQUVCQUFBQkFRRUJBUUVCQVFFQkFBRUJBUUVCQVFBQUFRQUJBQUFCQVFBQUFRQUJBUUVBQUFBQUFBQUJBQUVCQVFBQkFBRUFBUUFCQVFFQUFRQUJBUUFBQVFFQUFBRUJBUUFCQVFFQUFRRUFBUUVCQVFBQkFBQUJBQUFBQVFFQUFRQUJBUUFCQVFFQUFRRUJBUUVCQVFFQkFBRUJBUUVCQVFFQkFRQUJBUUVBQVFFQkFRRUJBUUVCQVFBQkFRRUFBUUVCQVFFQkFRRUJBUUVBQVFFQkFRRUJBUUVCQVFFQkFRQUJBUUFCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUFCQVFFQkFBRUFBUUVCQVFFQkFRRUJBUUFCQVFFQkFRRUJBUUVCQVFFQkFBRUJBUUVCQVFFQkFRRUJBQUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFFQkFRRUJBUUVCQUFFQkFRRUJBUUVBQVFFQkFRRUFBUUVCQVFBQkFRRUJBUUVCQVFFQkFRRUJBUUVCQVFBQkFRRUFBUUFCQUFFQUFRRUJBUUVBQVFFQUFBRUFBUUFCQVFBQUFBQUJBUUVBQVFBQkFRQUFBUUFCQVFFQUFBRUFBUUFBQVFBQUFBRUFBUUFCQUFFQUFBRUFBQUVBQUFBQUFBQUFBQUVBQUFBQVwifSI="}
🔁 Resuming a Scrape
Paid users can resume an interrupted scrape by using the cursor from the final dataset record:
- Run the scraper and note the
cursorvalue from the finalcursor-datarecord - Start a new run with the same
post_url - Paste the cursor into the Resume Cursor field
- The scraper will continue fetching comments from exactly where it left off
Example: If you scraped 50 comments but a post has 2,000, run again with max_items: 2000 and the cursor from your first run.
💳 Free vs Paid
| Feature | Free | Paid |
|---|---|---|
| Max comments per run | ~12 | Up to max_items |
| Cursor returned | ❌ | ✅ |
| Resume support | ❌ | ✅ |
| Full comment history | Limited | Full |
Free users will see the message:
🔒 Upgrade your subscription to scrape more comments.
⚙️ Notes & Limitations
Scope
- Only public posts can be scraped — private account content cannot be accessed
- Comments are returned in reverse chronological order (newest first)
- Deleted comments or accounts may appear with empty
textfields
Performance
- The Actor will retry failed requests up to 3 times automatically
max_itemsdefaults to12if not provided; free tier is capped at ~12 comments- For posts with thousands of comments, use cursor-based pagination across multiple runs
Data Integrity
textmay be empty for comments that contain only emojis rendered as images by Instagramlike_countreflects likes at scrape time and may change- Comment timestamps are in UTC (ISO 8601 format)
🧠 Use Cases
- Sentiment analysis — analyze audience reactions and emotional tone on any post
- Brand monitoring — track what people say about your brand or competitors
- Influencer research — evaluate engagement quality beyond surface-level metrics
- Customer insights — extract feedback and pain points from comment sections
- Content moderation — audit comments for spam, hate speech, or policy violations
- Competitive intelligence — study how audiences respond to competitor content
- Academic research — collect social media data for linguistics or behavioral studies
- Community management — identify top commenters and brand advocates
- NLP training data — build datasets of social media language and reactions
💡 SEO Keywords
- Instagram Comments Scraper
- Instagram Comment Extractor
- Scrape Instagram Comments
- Instagram Post Comments API
- Instagram Reel Comments Downloader
- No-Login Instagram Comment Scraper
- Instagram Comment Sentiment Analysis
- Instagram JSON Comment Export
- Instagram Engagement Data Tool
- Extract Comments from Instagram
🔐 Data & Privacy
This scraper accesses only publicly available data — content visible to any visitor on Instagram's website without authentication. The developer assumes no liability for misuse or violation of Instagram's Terms of Service. Users are responsible for ensuring their use of scraped data complies with applicable laws and platform policies.
❓ FAQ
Q: Can I scrape comments from private accounts?
A: No. This scraper only works with public posts. Private account content is not accessible without following and explicit permission from the account owner.
Q: What post types are supported?
A: All public Instagram post types are supported — standard posts (/p/), reels (/reel/), and IGTV videos (/tv/).
Q: Why are some comment text fields empty?
A: Instagram renders some emoji combinations as images rather than text. These comments may appear with an empty text field even though they contain content on the platform.
Q: How many comments can I scrape?
A: Free users are limited to ~12 comments per run. Paid users can set max_items to any value and resume across multiple runs using the cursor.
Q: How do I scrape all comments on a post?
A: Set max_items to a high value. If the run doesn't complete, use the cursor from the final record to continue in a new run. Repeat until all comments are collected.
Q: How do I resume a scrape?
A: Copy the cursor value from the final cursor-data record of your previous run and paste it into the Resume Cursor field. This is a paid feature only.
Q: Are comments returned in order?
A: Comments are returned in reverse chronological order (newest first), matching Instagram's default comment sort.
🚀 Getting Started
- Paste a URL: Enter any public Instagram post, reel, or video URL
- Set max items: Choose how many comments to collect (default: 12)
- Run: Click start and wait for the dataset to populate
- Export: Download results as JSON or CSV, or connect via the Apify API
📧 Support & Feedback
For issues, feature requests, or feedback, use the Actor's issue tracker or contact support directly. Your input helps improve the scraper for everyone!
🚀 Start scraping Instagram comments instantly — structured, clean data with no login required!