How to export Instagram comments to Excel
Getting the comments into Excel is the easy part. This guide covers the download, the CSV-versus-XLSX question that trips people up, and the handful of Excel techniques that turn a long list of comments into answers.
Updated Oct 6, 2026 · 8 min read
Step 1: download the comments
- Open the post or Reel on Instagram, tap Share → Copy link.
- Paste the link on the IGComments home page and press Get comments. No Instagram login is needed; the post just has to be public.
- When the comments appear, choose Excel (XLSX). If you filtered or searched first, the file contains only those rows.
Posts with up to 200 comments are free. Bigger posts show the first 200 as a preview; a one-time Export Pass ($4.99 for up to 10,000 comments) unlocks the full file. There is a dedicated page for this format at export Instagram comments to Excel.
CSV or XLSX: which should you pick?
Both open in Excel, but they behave differently.
| XLSX | CSV | |
|---|---|---|
| Opens with a double-click | Yes, exactly as exported | Yes, but Excel guesses column types |
| Emoji and accents | Always correct | Correct in our files (UTF-8 with a byte-order mark); can break in other tools’ CSVs |
| Long IDs | Stored as text, kept intact | Excel may convert to numbers and round them |
| Works in other tools | Excel, Sheets, Numbers | Almost everything, including databases and scripts |
For Excel, pick XLSX. The one real trap with CSV is the ID columns. comment_id and user_id are long numbers, and Excel stores numbers with 15 significant digits, so when it opens a CSV it can silently round the last digits or show them in scientific notation (1.79E+19). If you need those IDs — to de-duplicate reliably or match against another dataset — use XLSX, or import the CSV through Data → From Text/CSV and set those columns to Text before loading.
If you ever open a CSV from another source and see characters like é or 😠instead of accents and emoji, the file was read in the wrong encoding. Re-import it with Data → From Text/CSV and choose 65001: Unicode (UTF-8) as the file origin.
Set the sheet up so it’s easy to work with
The columns, left to right, are: A #, B comment_id, C username, D user_id, E comment, F posted_at_utc, G likes, H is_reply, I reply_to_comment_id, J reply_to_username, K mentions, L hashtags. The formulas below use those letters.
- Click any cell in the data and press Ctrl+T (Cmd+T on Mac), confirming that the table has headers. You now get filter arrows on every column and formulas that extend automatically.
- Select column E (comment) and turn on Wrap Text, then set a sensible column width, so long comments are readable.
- Use View → Freeze Panes → Freeze Top Row so headers stay visible while scrolling.
Sorting: use the arrow on likes to sort largest to smallest for the most-liked comments, or on posted_at_utc to read the conversation in order. Timestamps are in UTC, written as 2026-10-06 14:05:31; that format sorts correctly even when Excel treats it as text. To get a real date-time you can calculate with, add a column with =--F2 (the double minus converts the text) and format it as a date and time. For local time, use =--F2-TIME(5,0,0) for UTC−5 or =--F2+TIME(2,0,0) for UTC+2.
Filtering: the arrow on is_reply lets you show only no (top-level comments) or only yes (replies). On the comment column, Text Filters → Contains… finds every comment with a word like “price”. Text Filters → Does Not Equal with a blank value on mentions shows only comments that tag someone.
Count repeat commenters with COUNTIF
To see how many times each person commented, add a column (say M, headed comments_by_user) with:
=COUNTIF($C$2:$C$5000, C2)
Adjust 5000 to cover your last row, or inside a table use the structured version =COUNTIF([username],[@username]), which adjusts itself. Sort that column largest to smallest and the most active commenters rise to the top. Filter it to values greater than 1 to see only repeat commenters.
A few other single-cell answers:
- Total comments:
=COUNTA(C2:C5000) - Unique commenters (Excel 365 or 2021+):
=COUNTA(UNIQUE(C2:C5000))— make sure the range doesn’t include blank rows, or subtract one. - Replies:
=COUNTIF(H2:H5000, "yes") - Comments containing a word:
=COUNTIF(E2:E5000, "*giveaway*")— the asterisks mean “anywhere in the text”, and it isn’t case-sensitive. - Comments with at least one @mention:
=COUNTIF(K2:K5000, "@*")
If you only need the headline numbers, the IGComments stats panel already shows total, unique and repeat commenters and the top 10 most active people, with no spreadsheet needed. See the comment counter.
Build a PivotTable of comments per person
A PivotTable gives you a tidy summary you can sort and chart.
- Click inside the data and choose Insert → PivotTable, placing it on a new sheet.
- Drag
usernameto Rows. - Drag
comment_idto Values. If it shows “Sum of comment_id”, click it, choose Value Field Settings and change it to Count. - Right-click a number in the count column and choose Sort → Largest to Smallest.
Variations worth knowing: put is_reply in Columns to split each person’s count into top-level comments and replies; drag likes to Values as a Sum to see whose comments drew the most likes; or add a helper column with =INT(--F2) formatted as a date, put that in Rows, and you have comments per day. The number of rows in a username pivot is your unique commenter count.
Remove duplicates the right way
“Duplicates” can mean two different things, so decide which you want before deleting anything — and work on a copy of the sheet.
- One row per person (for example, a list of everyone who took part): select the data, choose Data → Remove Duplicates, untick everything except
usernameand click OK. Excel keeps the first occurrence of each username, so sort byposted_at_utcoldest first beforehand if you want to keep each person’s earliest comment. - Identical comments (the same person pasting the same text several times): run Remove Duplicates with both
usernameandcommentticked.
Avoid de-duplicating on comment_id — every comment has its own ID, so nothing will be removed. If you would rather not edit the data, a formula gives you a separate list: =UNIQUE(C2:C5000) spills every distinct username into the cells below.
You can also skip this step: the one comment per person filter in IGComments does it before you download, and the export contains just those rows. More in how to get a list of everyone who commented.
Common problems and fixes
- Dates are text, or
=--F2returns #VALUE!: some Excel locales expect a different date order. Use=DATEVALUE(LEFT(F2,10))+TIMEVALUE(RIGHT(F2,8))instead, or import the CSV through Data → From Text/CSV and set the column type to Date/Time. - Comments with line breaks look like several rows: that happens when a CSV is opened by a tool that doesn’t respect quoted fields. Excel handles our CSVs correctly; if another app doesn’t, use XLSX.
- Fewer rows than Instagram’s comment count: expected — Instagram counts hidden and filtered comments that can’t be downloaded. See why the count doesn’t match.
- Running a giveaway: Excel’s
RAND()recalculates every time the sheet changes, which makes a fair, provable draw hard to show. For the winner, use Pickfetti, which records the draw on a public proof page.
FAQ
Can I export Instagram comments directly to Excel?
Yes. IGComments offers an Excel (XLSX) download alongside CSV and JSON. Paste the post link, press Get comments and choose Excel.
Why do emoji look broken when I open a CSV in Excel?
The file was read in the wrong encoding. Our CSVs include a UTF-8 byte-order mark so Excel reads them correctly; for other files, import through Data, From Text/CSV and choose UTF-8.
Why did Excel change the comment IDs?
Excel keeps only 15 significant digits for numbers, so long IDs in a CSV can be rounded. Use the XLSX download, or import the CSV with the ID columns set to Text.
How do I count how many times each person commented in Excel?
Add a column with =COUNTIF($C$2:$C$5000, C2), where column C is username, then sort it largest to smallest. A PivotTable with username in Rows and a count of comment_id gives the same answer.
Does the Excel file include replies?
Yes. Replies have yes in the is_reply column and show which comment and username they answer. Filter is_reply to no if you only want top-level comments.