Replies included · threads kept
Export Instagram comments with replies
Most of a busy comment section happens in the replies. IGComments exports top-level comments and every reply we can fetch, and marks each reply with the username and comment ID it was answering, so whole conversations survive the trip to a spreadsheet. Free up to 200 comments.
The problem with exports that skip replies
The most common complaint about Instagram comment exporters is simple: the file is missing replies. Many tools only collect top-level comments, because replies sit behind “View replies” links and have to be fetched separately for every thread. The result is an export that looks complete but isn’t.
How much that matters depends on the post. On a quiet post, replies are mostly the account owner saying thanks. On a giveaway, a launch, or anything controversial, they can be a large share of the conversation: friends tagging each other, customers answering each other’s questions, the brand responding to complaints. Lose the replies and you lose the part where people actually talked.
IGComments fetches reply threads along with the top-level comments. You don’t have to turn anything on.
How replies appear in the export
Replies are ordinary rows with three extra columns filled in:
| username | comment | is_reply | reply_to_username | reply_to_comment_id |
|---|---|---|---|---|
| jen.outdoors | Does this come in a 40L? | no | ||
| trailpack.co | @jen.outdoors yes, launching next month | yes | jen.outdoors | 17998812345 |
| mike_hikes | @jen.outdoors I have the 40, it’s great | yes | jen.outdoors | 17998812345 |
reply_to_comment_id is the comment_id of the top-level comment that started the thread, so every reply in a thread shares the same value. reply_to_username is who wrote that parent comment. Top-level comments have is_reply set to no and the two reply columns empty.
The same fields exist in all three formats: CSV, Excel and JSON.
Rebuilding conversation threads in a spreadsheet
To read each thread in order — the original comment followed by its replies — add a helper column and sort on it:
- Add a column called
thread. - Fill it with the parent ID for replies and the comment’s own ID for top-level comments:
=IF(H2="yes", I2, B2)(column H isis_reply, I isreply_to_comment_id, B iscomment_id). - Sort by
thread, then byis_reply(so the parent comes first), then byposted_at_utc.
Every conversation is now grouped together. To count how many replies each top-level comment attracted, use =COUNTIF(I:I, B2) on the top-level rows; the comments with the most replies are usually the most important questions or the most contested opinions on the post.
Top-level only, replies only, or both
Sometimes you do want to drop the replies — for example when you need one row per original comment for a count, or a contest rule says replies don’t count as entries. On the results page, switch between All, Top-level only and Replies only before exporting. The download contains exactly that subset.
Useful combinations:
- Replies only + search for the account’s own username: every answer the brand or creator gave, to audit response quality.
- Top-level only + questions: questions your audience asked, without the follow-up chatter.
- Replies only + has @mentions: people pulling friends into the conversation.
The free stats panel also shows how many of the comments are replies, alongside unique and repeat commenters.
When the replies are the part you need
- Customer service audits. Export replies written by the brand account and check how many questions got an answer, how quickly (compare each reply’s
posted_at_utcwith its parent’s), and what was said. - Community management. Arguments and misinformation usually live in reply threads, not in top-level comments. The threads with the most replies are where moderators should look first.
- Giveaways. Entrants often tag friends by replying under someone else’s comment. If your rules allow it, those are entries; if they don’t, you can filter them out. Either way you need to see them. See exporting giveaway comments.
- Research on conversation. Studies of how people respond to each other — agreement, disagreement, who replies to whom — need the parent–child links, not a flat list of comments. The JSON export keeps those links intact for analysis.
A note on completeness
We fetch every reply Instagram makes publicly available. Replies that Instagram hides from everyone — spam-filtered, restricted, or caught by the account’s hidden-words settings — and deleted replies can’t be fetched by any tool, and they are still included in the comment count Instagram displays. So an export can be somewhat smaller than that number even with replies included. More on why counts don’t match.
Replies count toward the comment total for pricing, the same as top-level comments. Up to 200 is free; above that a one-time Export Pass unlocks the full post — $4.99 up to 10,000, $9.99 up to 30,000, $14.99 up to 100,000. Pricing.
Frequently asked questions
Are replies included automatically?
Yes. Every export fetches replies along with top-level comments. There is no setting to enable and no extra charge beyond the normal comment total.
Are replies to replies included?
Instagram keeps threads one level deep: a reply to a reply is stored as another reply to the same top-level comment. Those are included, and they share the same reply_to_comment_id.
How can I tell who a reply was really answering?
reply_to_username shows who wrote the comment that started the thread. Within a thread, people usually @mention the person they are answering, which appears in the mentions column.
Can I export only replies?
Yes. Choose Replies only on the results page and then download; the file will contain only reply rows.
Do replies count toward the free limit?
Yes. The limit is based on total comments, replies included, because they are fetched the same way.
Why are some replies I can see in the app missing?
Replies posted after the export ran aren’t in the file, and replies Instagram has hidden or filtered can’t be fetched. Fetch the post again to pick up newer replies.