Export Instagram comments to CSV and Excel
Move available comments from one public Instagram post or reel into a spreadsheet. This walkthrough uses the FetchFox comments viewer for a single batch of up to 20 comments, then imports the saved CSV without making another request.
Choose the post and check the cost
Copy the public post or reel link, not the creator’s profile address. Instagram /p/, /reel/, /reels/ and /tv/ links are supported. Share parameters are not needed. Private, removed or restricted posts may be unavailable even if you can open them in your own Instagram account.
You need a FetchFox account and one available credit for the viewer. A successful batch costs one credit, including a verified empty result. Failed processing uses no credits. The free plan includes 20 credits per UTC calendar month; it is not an unlimited export allowance.
Collect a batch and save the CSV
Signing in preserves your input but does not run extraction. You choose when to spend a credit.
- Paste the post URL into the Instagram comments viewer.
- Choose View comments and sign in or create an account if prompted. After returning, choose View comments again.
- Read the collection status and the returned comments. A partial batch is not a complete archive.
- Choose Download CSV beneath your result. Download JSON too if you need the original string IDs and null values. Both downloads use the current response and cost no additional credits.
Compare your result with a saved example
The excerpt below shows why zero and unavailable counts must stay distinct: this Instagram response reported zero likes, while reply counts were unavailable. Its comment IDs are long strings.
Import into Excel without losing comment IDs
In Excel, use Data → From Text/CSV, select the downloaded file, and choose comma separation and UTF-8 if prompted. Check the preview before loading. Import the id and parent_comment_id columns as text when the import interface offers column types.
The FetchFox CSV quotes fields and prefixes numeric IDs and formula-like text with an apostrophe. Depending on your spreadsheet importer, that apostrophe may remain visible. It protects the value; do not convert IDs into numbers or strip protection from untrusted comment text. Keep the JSON download if you need untouched identifiers.
A blank likes or replies cell means unavailable, not zero. Do not fill blanks with 0 before calculating averages. The timestamp column uses Unix seconds in UTC.
Open the same CSV in Google Sheets
In a new spreadsheet, choose File → Import, upload the CSV, and select a new sheet or spreadsheet. Set the separator to comma if automatic detection is incorrect. Check two rows against the downloaded JSON, especially the comment ID and missing metrics. Avoid replacing a populated sheet accidentally.
Continue beyond the viewer batch
The browser viewer reads one batch. For additional pages, use the API or MCP and pass the returned cursor with the same post URL. Instagram supports popular and recent ordering; preserve that order through a collection. Each successful page has its own charge, and public source restrictions can stop pagination before every comment or reply is collected.
Troubleshoot the export
If the tool rejects the URL, use a direct post or reel link. If the result is unavailable, check the public source and the displayed error before trying again. Repeating a successful request can spend another credit, including a cached success.
An empty CSV after a verified empty response is different from a failed extraction. A low returned count or hasMore=false does not prove that the public post has no other comments. Reply counts describe available metadata; they do not mean every reply’s text is included.
Sources
External documentation checked 22 October 2026. Client interfaces and third-party capabilities can change.
See a recorded Instagram result
Two selected comments from a batch of 20, retrieved on . This is an excerpt of a public response, not a live lookup or an endorsement.
RECORDED RESULT · 20 OCT 2026
Instagram comments
Showing 2 of 20 returned comments · Collection: partial
❤️❤️❤️❤️
0 likes · Unavailable replies
😍😍
0 likes · Unavailable replies
Selected fields from a saved response. Missing counts are unknown, not zero.
View the public source post. The original request stopped at its 20-comment limit and offered a continuation. A partial result does not represent every comment or reply.
View the result screenshot
What the CSV contains
The CSV also keeps the source URL, comment ID, available author fields and timestamp. Unknown counts are empty cells; reported zero stays 0. Numeric IDs have a protective apostrophe so spreadsheets keep every digit. The JSON excerpt keeps IDs as strings and unknown counts as null; pagination cursors are omitted from this example.
These saved examples use no credits. Follow the Instagram CSV and Excel tutorial to export an available batch from your own public post.