# Instagram Comments Scraper: Post and Reel Comments, No Login (`themineworks/instagram-comments-scraper`) Actor

Instagram comments scraper for public posts and reels: comment text, username, profile link, likes, reply count, time and comment link, newest first, thousands per post. Stop at a date to save time. No login, no cookies. $2.34 per 1,000 comments.

- **URL**: https://apify.com/themineworks/instagram-comments-scraper.md
- **Developed by:** [The Mine Works](https://apify.com/themineworks) (community)
- **Categories:** Social media, Lead generation, MCP servers
- **Stats:** 1 total users, 0 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.71 / 1,000 comments

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## Instagram Comments Scraper: Post and Reel Comments, No Login

[![7,133 Instagram comments from 4 posts in 12 minutes, with username, profile link, likes and time](https://api.apify.com/v2/key-value-stores/cUXz95yxflDho41nn/records/instagram-comments-scraper-hero.png)](https://console.apify.com/actors/p5cKO48Xw8WOPdkaM/input?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

From **The Mine Works**, makers of [Amazon Product Scraper](https://apify.com/themineworks/amazon-products?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral) and [B2B Leads Finder](https://apify.com/themineworks/b2b-leads-finder?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), with over 245,000 runs across 280+ public actors.

Updated 23 Oct 2026: first release. Paste post or reel links, get one row per public comment: the text, the commenter's username and profile link, likes, the time and a link to the comment. Bookmark this Actor on its Store page so it is one click away next time.

### Why choose this actor?

- **Deep, not a sample.** Comments are read newest first, about 14 per request, and the list keeps going. In our test on 23 Oct 2026 the actor read 3,000 comments from each of two posts (one post has 7,300 comments; the 3,000 newest went back 13 days) and the whole visible list of two smaller posts (710 and 989 comments). No Instagram account, cookies or browser.
- **Cheap to run.** A page of comments is about 5 KB, so a thousand comments is roughly 70 requests and under 0.5 MB. Our 7,133 comment test run moved 2.4 MB in total and finished with no blocked request.
- **Pay per comment, nothing for errors.** Links that are not posts, posts with no visible comments, duplicates and the summary row are never charged.

[![Run it on Apify](https://api.apify.com/v2/key-value-stores/cUXz95yxflDho41nn/records/button-run.png)](https://console.apify.com/actors/p5cKO48Xw8WOPdkaM/input?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Part of The Mine Works Social media and video family:** [Threads Scraper](https://apify.com/themineworks/threads-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [Reddit Scraper](https://apify.com/themineworks/reddit-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [Threads Search Scraper](https://apify.com/themineworks/threads-search-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [Instagram Profile Scraper](https://apify.com/themineworks/instagram-profile-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [Instagram Followers & Following](https://apify.com/themineworks/instagram-followers-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral), [Reddit Search Scraper](https://apify.com/themineworks/reddit-search-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral).

Guide and FAQs: [Instagram Comments Scraper on themineworks.com](https://themineworks.com/actors/instagram-comments-scraper/).

### Try it in one minute

Paste this into the input (JSON view) and press Start. It returns the 50 newest comments on a public NASA post:

```json
{
  "postUrls": ["https://www.instagram.com/p/DeTUk4sDSp-/"],
  "maxCommentsPerPost": 50
}
```

Put several links on separate lines to read several posts in one run. Reels work the same way, and so does a bare shortcode such as `DeTUk4sDSp-`.

Apify's free plan includes $5 of credit every month, which covers about 2,100 comments at this actor's price.

#### Copy to your AI assistant

```text
themineworks/instagram-comments-scraper on Apify. Scrapes public Instagram comments from post and reel links with no login and returns one flat row per comment, newest first. Call ApifyClient("TOKEN").actor("themineworks/instagram-comments-scraper").call(run_input={"postUrls": ["https://www.instagram.com/p/DeTUk4sDSp-/"], "maxCommentsPerPost": 200}), then client.dataset(run["defaultDatasetId"]).list_items().items. Required: postUrls (array of post or reel links or 11 character shortcodes, up to 500). Optional: maxCommentsPerPost (default 100, 10 to 10000, per post), newerThan (a date like 2026-10-01 or a period like "7 days"; reading a post stops when its comments get older), proxyConfiguration (Apify datacenter proxy by default). Comment rows have no _type field and carry commentId, postShortcode, postUrl, commentUrl, text, ownerUsername, ownerProfileUrl, ownerId, ownerIsVerified, ownerProfilePicUrl, likesCount, timestamp, position, scrapedAt. Replies are not available to a logged out visitor, so there is no reply data. Skip rows with _type "summary", "info" or "error"; the per post run summary is also the key-value store record OUTPUT. Full spec: GET https://api.apify.com/v2/acts/themineworks~instagram-comments-scraper/builds/default (Bearer TOKEN), which returns inputSchema and readme. Token: https://console.apify.com/account/integrations?fpr=ymnoit&utm_source=apify-readme&utm_medium=referral
```

### Key features

- **Post links, reel links or shortcodes.** `instagram.com/p/<code>/`, `instagram.com/reel/<code>/`, `instagram.com/<user>/p/<code>/` with or without tracking parameters, or the bare 11 character code. Up to 500 posts per run, read three at a time.
- **Commenter profile link on every row.** `ownerProfileUrl` is ready to open or to feed to [Instagram Profile Scraper](https://apify.com/themineworks/instagram-profile-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral) for followers and bio.
- **Stop at a date.** `newerThan` ends a post as soon as its comments get older than your cutoff. Because comments arrive newest first, "everything from the last 7 days" costs only the pages it needs.
- **Per post report.** The summary row lists, for every post, how many pages were read, how many comments came back, the oldest and newest comment time, and why it stopped (cap reached, end of list, date reached, rate limit).
- **Rate limit aware.** When Instagram answers "rate limit exceeded" the whole run pauses (15, 30, 60 then 90 seconds) and retries on a new IP. A post that is still limited after five tries ends with the rows it has; three such posts in a row end the run. Nothing is charged for what was not delivered.

### What Instagram shows a visitor who is not logged in

This actor reads exactly what instagram.com shows to a visitor who has not signed in, so it carries that visitor's limits:

- **Newest first only.** There is no "most relevant" or "top comments" order.
- **No replies.** Instagram does not send reply threads, reply counts or parent comment ids to a logged out visitor, so the rows are top level comments and there is no reply toggle. If Instagram ever sends `repliesCount` or `parentCommentId`, they appear in the row; today they are absent.
- **Hidden comments stay hidden.** Comments filtered by the post owner or by Instagram's offensive comment filter are not in the list for anyone.
- **Private accounts and posts with comments turned off** return nothing (a row in the summary says so, nothing is charged).

### How to use it

#### Basic: the latest comments on a few posts

```json
{
  "postUrls": [
    "https://www.instagram.com/p/DeTUk4sDSp-/",
    "https://www.instagram.com/reel/Dejxav7l58q/"
  ],
  "maxCommentsPerPost": 200
}
```

#### Last week's reaction to a launch

```json
{
  "postUrls": ["https://www.instagram.com/p/DeTUk4sDSp-/"],
  "maxCommentsPerPost": 5000,
  "newerThan": "7 days"
}
```

The post is read page by page until the comments are older than seven days, or 5,000 are collected.

#### Find people who asked a question or tagged a friend

Run the post, then filter `text` for a question mark, a keyword or an `@mention` in a spreadsheet. Each row has `ownerProfileUrl` to reach the commenter and `commentUrl` to open the exact comment.

#### Giveaway entries

Run the giveaway post with a high `maxCommentsPerPost`, then count unique `ownerUsername` values and keep the rows whose `text` contains the required tag or word. `timestamp` shows whether a comment was posted before the deadline.

#### Track how a campaign is received

Schedule the same links daily with `newerThan: "1 day"`. Each run returns only the new comments, and `likesCount` shows which ones people agreed with.

### Input parameters

| Parameter | Type | Default | What it does |
|---|---|---|---|
| `postUrls` | array of strings | required | Post or reel links, or 11 character shortcodes. Up to 500. |
| `maxCommentsPerPost` | integer | `100` | Most comments per post, 10 to 10,000. |
| `newerThan` | string | empty | Stop a post once its comments are older than this: `2026-10-01`, `7 days`, `2 weeks`, `3 months`. |
| `proxyConfiguration` | object | Apify datacenter | Datacenter proxy is all it needs. Residential groups are removed if selected. |

### What data do you get?

One row per comment. Comment rows have no `_type` field; the summary, info and error rows do, so a filter on `_type` separates them.

| Field | What it is |
|---|---|
| `commentId` | Instagram's id of the comment, the key to store and join on |
| `postShortcode`, `postUrl` | The post or reel the comment is on |
| `commentUrl` | Link that opens this comment on Instagram |
| `text` | Comment text with emoji and @mentions as written |
| `ownerUsername`, `ownerProfileUrl`, `ownerId` | The commenter |
| `ownerIsVerified` | True for a verified commenter |
| `ownerProfilePicUrl` | Small profile picture link (Instagram links expire after a few days) |
| `likesCount` | Likes on the comment |
| `timestamp` | When it was posted, ISO 8601 UTC |
| `position` | Place in this post's list for this run, 1 = newest |
| `scrapedAt` | When the row was written |
| `repliesCount`, `parentCommentId` | Absent today: Instagram does not send them to a logged out visitor |

**Summary row** (`_type: "summary"`, never charged): `posts_requested`, `posts_read`, `posts_failed`, `pages_read`, `comments_found`, `comments_delivered`, `charged_for`, `duplicates_skipped`, `http_requests`, `http_rate_limited`, `http_megabytes`, `stopped_early`, `shortfall_reason`, and `per_post`, one entry per post with `status`, `pages`, `comments_delivered`, `oldest_comment`, `newest_comment` and why it `stopped`. The same summary is saved as the `OUTPUT` record of the run.

**Error rows** (`_type: "error"`, never charged): one per input that is not a post or reel link, with `identifier` and `reason`.

#### Stable fields for automations

These were present in every comment row of our test runs (7,133 rows from 4 posts), and their names will not change: `commentId`, `postShortcode`, `postUrl`, `commentUrl`, `text`, `ownerUsername`, `ownerProfileUrl`, `ownerId`, `timestamp`, `position`, `scrapedAt`. `likesCount`, `ownerIsVerified` and `ownerProfilePicUrl` were present in every row too.

#### Output example

One comment from a NASA post, 1,823rd newest (test run, 23 Oct 2026, ownerProfilePicUrl left out):

```json
{
  "commentId": "18629311897035678",
  "postShortcode": "DeTUk4sDSp-",
  "postUrl": "https://www.instagram.com/p/DeTUk4sDSp-/",
  "commentUrl": "https://www.instagram.com/p/DeTUk4sDSp-/c/18629311897035678/",
  "text": "Nice cgi, “nasa” to deceive in Hebrew",
  "ownerUsername": "carson.rider",
  "ownerProfileUrl": "https://www.instagram.com/carson.rider/",
  "ownerId": "37945024684",
  "ownerIsVerified": false,
  "likesCount": 0,
  "timestamp": "2026-10-11T14:33:12.000Z",
  "position": 1823,
  "scrapedAt": "2026-10-23T18:22:10.472Z"
}
```

An error row for a link that is not a post (nothing charged):

```json
{ "_type": "error", "error_type": "invalid_input", "identifier": "https://www.instagram.com/nasa/", "reason": "Not used: a profile or other Instagram link, not a post or reel link (use instagram.com/p/<code>/ or instagram.com/reel/<code>/). Not charged." }
```

### Pricing

Pay per event: you pay for the comments you receive, plus a flat $0.003 per run, whatever memory you choose.

| Event | When it is charged | Free plan | Bronze (Starter) | Silver (Scale) | Gold (Business) |
|---|---|---|---|---|---|
| `comment-scraped` | Once per comment row stored in your dataset | $2.34 per 1,000 | $2.07 per 1,000 | $1.89 per 1,000 | $1.71 per 1,000 |
| `run-start` | Once per run, after the first page returned comments | $0.003 | $0.003 | $0.003 | $0.003 |

The price of one comment is the price per 1,000 divided by 1,000.

Never charged:

- inputs that are not post or reel links (each gets an error row);
- posts that return no comments (private, deleted, comments off, or none yet);
- a comment seen twice in one post;
- comments past your `maxCommentsPerPost` or older than `newerThan`;
- the summary, info and error rows;
- a run with no valid input, or one whose posts return no comments: the start fee is charged only once a page has returned comments;
- anything past your "Max cost per run". The actor checks the budget before each batch of rows and stops while the total is still below your limit, so the run ends SUCCEEDED with a partial result and a status message saying so.

### Run it on a schedule

1. Open the actor in Apify Console, set your input and click **Save as a new task**.
2. In the task, open **Schedules**, click **Add schedule** and pick how often (every day, every Monday at 08:00 and so on).
3. Use `newerThan` (for example `1 day`) so each run returns only the new comments, and join on `commentId` if you keep a history.
4. Optional: add an integration (Google Sheets, Slack, a webhook) so each run lands where your team works.

### FAQ

#### What does this actor read?

The comment list Instagram shows to a visitor who is not logged in, on public posts and reels. It does not log in, post, like or follow, and it does not read private accounts.

#### How many comments can I get per post?

As many as Instagram lists to a visitor who is not logged in, up to the 10,000 you set in `maxCommentsPerPost`. In our test, two posts with thousands of comments gave the full 3,000 we asked for (the cap), and two posts with 700 and 1,000 visible comments gave all of them, then the list ended. The count shown on Instagram can be higher than the list: it includes replies and comments hidden by the owner or by Instagram's filters. One test post showed 1,255 comments and its visible list ended at 989.

#### Why are there no replies?

Instagram does not send reply threads to a visitor who is not logged in. The logged out comment list is top level comments only, and the reply count and parent id fields come back empty. We would rather say so than return a column of zeros. If you need replies, you need a logged in session, which this actor does not use.

#### Why newest first, and can I get the top comments?

The logged out list has one order, newest first. To get the most liked, run the post and sort by `likesCount` in your spreadsheet.

#### Why did a post return no comments?

The post may be private, deleted, have comments turned off, or have none yet. The summary row's `per_post` entry says `no_comments` for it and nothing is charged. Check the link in a private browser window: if you can see comments there, run it again, because Instagram sometimes answers a first request late.

#### What happens when Instagram rate limits the run?

Instagram answers "rate limit exceeded" when a very long post is read for a long time. The run pauses all posts for 15 to 90 seconds and retries on a new IP. The rows read so far are always kept and charged, and the summary shows `http_rate_limited` and the post's `status`. Splitting a very large list into two runs also helps.

#### How long does a run take?

About 2 to 3 seconds per page of 14 comments for one post, and three posts are read at once. In our tests 50 comments took 8 seconds, 1,699 comments from two posts took 3.6 minutes, and 7,133 comments from four posts took 12.6 minutes, including pauses after 20 rate limit answers. When Instagram is quiet a single post runs at about 6 comments per second. The default time limit is 3,600 seconds; the actor stops before it and keeps every row.

#### Do I need an account, cookies or a proxy?

No. The actor uses Apify datacenter proxy, which is included. Nothing to set up.

#### Which actor should I use for other Instagram data?

[Instagram Post Scraper](https://apify.com/themineworks/instagram-post-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral) lists a profile's posts (with the post links to paste here), [Instagram Reel Scraper](https://apify.com/themineworks/instagram-reel-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral) does the same for reels, and [Instagram Profile Scraper](https://apify.com/themineworks/instagram-profile-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral) turns a commenter's profile link into followers and bio.

#### Which formats can I download?

JSON, CSV, Excel, XML, RSS and HTML from the run's Storage tab or through the API. The dataset has two ready views: Comments and Commenters.

#### Can I use it from Claude, ChatGPT or Cursor (MCP)?

Yes, through Apify's MCP server. Connector URL: https://mcp.apify.com/?tools=themineworks/instagram-comments-scraper

- Claude: Settings > Connectors > Add custom connector, paste the URL, sign in with Apify.
- ChatGPT: turn on developer mode, add an MCP connector with the URL, sign in with Apify.
- Cursor or VS Code: add it as an HTTP MCP server with that URL.
- Claude Code: `claude mcp add -t http instagram-comments-scraper "https://mcp.apify.com/?tools=themineworks/instagram-comments-scraper"`

#### Is it legal to scrape Instagram comments?

The actor reads only comments that anyone can see without logging in. Comments carry usernames, which are personal data under rules such as GDPR and CCPA. You are responsible for how you use the data, including Instagram's terms and data protection law. This is general information, not legal advice.

### Integrations

- **Google Sheets**: send each run's comments to a sheet with Apify's Google Sheets integration; one row per comment fits a sheet as is.
- **Make, Zapier and n8n**: start a run and read its dataset with the Apify apps and nodes, for example "new comments on our latest post to Slack every morning".
- **Webhooks**: have Apify call your URL when a run succeeds, then fetch the dataset.
- **API and SDKs**: run it from Python or JavaScript with the Apify client, or with a plain HTTP call (see "Copy to your AI assistant" above).
- **MCP clients**: Claude, ChatGPT, Cursor and VS Code can run it as a tool through the connector URL in the FAQ.

### More from The Mine Works

**Social media and video**

- [Threads Scraper](https://apify.com/themineworks/threads-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Reddit Scraper](https://apify.com/themineworks/reddit-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Threads Search Scraper](https://apify.com/themineworks/threads-search-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Instagram Profile Scraper](https://apify.com/themineworks/instagram-profile-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Instagram Followers & Following](https://apify.com/themineworks/instagram-followers-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Reddit Search Scraper](https://apify.com/themineworks/reddit-search-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Twitter / X Scraper](https://apify.com/themineworks/twitter-x-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [YouTube Transcript](https://apify.com/themineworks/youtube-transcript-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Xiaohongshu (RED) Scraper](https://apify.com/themineworks/xiaohongshu-explore-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Telegram Channel Scraper](https://apify.com/themineworks/telegram-channel-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Telegram Channel Finder](https://apify.com/themineworks/telegram-channel-finder?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Pinterest Profile Scraper](https://apify.com/themineworks/pinterest-profile-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Leads and business directories**

- [B2B Leads Finder](https://apify.com/themineworks/b2b-leads-finder?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Skip Trace Lookup](https://apify.com/themineworks/skip-trace-lookup?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Google Maps Email Scraper](https://apify.com/themineworks/maps-leads?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [2GIS Places Scraper](https://apify.com/themineworks/2gis-places-search?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Marketing, SEO and reviews**

- [Facebook Ad Library Scraper](https://apify.com/themineworks/meta-ad-library-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Google Ads Transparency Scraper](https://apify.com/themineworks/google-ads-transparency?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Similarweb Scraper](https://apify.com/themineworks/similarweb-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Google News Scraper](https://apify.com/themineworks/google-news?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**LinkedIn**

- [LinkedIn Company Scraper](https://apify.com/themineworks/linkedin-company-details?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [LinkedIn Post Scraper](https://apify.com/themineworks/linkedin-post-search?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [LinkedIn Employees Scraper](https://apify.com/themineworks/linkedin-employees?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [LinkedIn Profile Scraper](https://apify.com/themineworks/linkedin-profile-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Real estate**

- [Zillow Rentals Scraper](https://apify.com/themineworks/zillow-rental-listings?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Zillow Sold Comps Scraper](https://apify.com/themineworks/zillow-recently-sold?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [India Real Estate MCP](https://apify.com/themineworks/india-real-estate-mcp?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Housing.com Scraper](https://apify.com/themineworks/housing-com-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Science, health and government data**

- [Academic Research MCP](https://apify.com/themineworks/academic-research-mcp?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [CourtListener Scraper](https://apify.com/themineworks/courtlistener-court-records?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Socrata Open Data Scraper](https://apify.com/themineworks/socrata-open-data?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [OpenAlex Scraper](https://apify.com/themineworks/openalex-scholarly-works?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Jobs and hiring**

- [Foundit Monster India Jobs](https://apify.com/themineworks/foundit-jobs-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Hirist Jobs Scraper](https://apify.com/themineworks/hirist-jobs-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [India Jobs MCP](https://apify.com/themineworks/india-jobs-mcp?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Naukri Jobs Scraper](https://apify.com/themineworks/naukri-jobs?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Company and business data**

- [Company Domain Finder](https://apify.com/themineworks/company-domain-finder?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [GST Taxpayer Lookup](https://apify.com/themineworks/gst-taxpayer-lookup?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Company KYB Resolver](https://apify.com/themineworks/company-identity-resolver?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [SEC EDGAR Filings Scraper](https://apify.com/themineworks/sec-edgar-filings?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**E-commerce and marketplaces**

- [Ozon.ru Scraper](https://apify.com/themineworks/ozon-product-search?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [⭐ Amazon Reviews Scraper](https://apify.com/themineworks/amazon-reviews?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Amazon Product Scraper](https://apify.com/themineworks/amazon-products?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Etsy Listings Scraper](https://apify.com/themineworks/etsy-search-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Food and local services**

- [NoBroker Scraper](https://apify.com/themineworks/nobroker-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Swiggy Restaurant Scraper](https://apify.com/themineworks/swiggy-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Zomato Scraper](https://apify.com/themineworks/zomato-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**Developer and AI tools**

- [Website to Markdown Crawler](https://apify.com/themineworks/rag-crawler?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [GitHub Skill Finder](https://apify.com/themineworks/github-skill-discovery?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [GitHub Repo Scraper](https://apify.com/themineworks/github-repo-intelligence?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [GitHub Trending Scraper](https://apify.com/themineworks/github-trending-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

**More tools**

- [G2 Reviews Scraper](https://apify.com/themineworks/g2-reviews-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Naver Blog Scraper](https://apify.com/themineworks/naver-blog-posts-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [WeChat Article Scraper 微信公众号文章](https://apify.com/themineworks/wechat-article-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)
- [Taobao Products Scraper 淘宝 天猫](https://apify.com/themineworks/taobao-products-scraper?fpr=ymnoit\&utm_source=apify-readme\&utm_medium=referral)

***

*Instagram Comments Scraper turns post and reel links into one row per public comment with the commenter, likes and time, with no login and no charge for anything it does not deliver.*

# Actor input Schema

## `postUrls` (type: `array`):

Instagram post or reel links, one per line, for example https://www.instagram.com/p/DeTUk4sDSp-/ or https://www.instagram.com/reel/DeTUk4sDSp-/. A bare shortcode (the part after /p/ or /reel/) also works. Up to 500 per run. Profile links are not accepted: use Instagram Post Scraper to list a profile's posts first.

## `maxCommentsPerPost` (type: `integer`):

The most comments to return for each post, 10 to 10,000. Comments come newest first, about 14 per request. Example: 500.

## `newerThan` (type: `string`):

Stop reading a post once its comments get older than this. A date like 2026-10-01, or a period like 7 days, 2 weeks or 3 months. Because comments arrive newest first, this also saves time on busy posts.

## `proxyConfiguration` (type: `object`):

Apify datacenter proxy is the default and all this actor needs. Residential groups are removed if selected.

## Actor input object example

```json
{
  "postUrls": [
    "https://www.instagram.com/p/DeTUk4sDSp-/"
  ],
  "maxCommentsPerPost": 50,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `results` (type: `string`):

No description

## `summary` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "postUrls": [
        "https://www.instagram.com/p/DeTUk4sDSp-/"
    ],
    "maxCommentsPerPost": 50,
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("themineworks/instagram-comments-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "postUrls": ["https://www.instagram.com/p/DeTUk4sDSp-/"],
    "maxCommentsPerPost": 50,
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("themineworks/instagram-comments-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "postUrls": [
    "https://www.instagram.com/p/DeTUk4sDSp-/"
  ],
  "maxCommentsPerPost": 50,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call themineworks/instagram-comments-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,themineworks/instagram-comments-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/p5cKO48Xw8WOPdkaM/builds/yeDoKBCeL47ziBkzx/openapi.json
