CSV Viewer (Sort, Filter, Extract Columns)
Paste CSV or pick a file to inspect it as a table. Click a column header to sort, filter rows by keyword, drop or reorder columns, then copy or save the result as CSV. To change the format use the CSV ⇔ JSON Converter, or switch separators with the Delimiter Converter.
🔒 Runs in your browser · Your data is never sent to a server
Choose a CSV, TSV or text file, or drag & drop it here (UTF-8)
Edit columns
Use the arrows to change the order and × to remove a column. Removed columns are left out of the export.
How to use
- Paste CSV or choose a file (drag & drop works too).
- Click a column header to sort, and use "Filter" to show only rows matching a keyword.
- Use "Edit columns" to reorder or remove columns.
- Press "Copy CSV" or "Download CSV" to export what is currently shown.
Notes
- A column sorts numerically when every non-empty value is a number; otherwise it sorts as natural-order text (file2 before file10). Empty cells always go last. Click a header three times to return to the original order.
- The filter does not search columns you removed in "Edit columns". The sorted, filtered and column-edited result is exported as CSV exactly as shown (LF line endings; only cells that need it are quoted).
- Rows with fewer fields than the widest row are padded with empty cells. Fully blank lines are ignored.
- Only the visible rows are drawn inside a fixed-height scroll area, so tens of thousands of rows stay responsive. Very large files (tens of MB or more) may still be slow depending on browser memory. Files are read as UTF-8.
Glossary
CSV
Comma-Separated Values: a text format that lists values separated by a delimiter such as a comma, one record per line.
Virtual scrolling
A technique that draws only the rows currently in view, so even a table with a huge number of rows stays fast.
Natural sort
Sorting that compares runs of digits as numbers, so file2 comes before file10.
FAQ
How many rows can it open?
Only the rows in view are drawn (virtual scrolling), so tens or hundreds of thousands of rows display smoothly. Parsing and sorting still use browser memory, so files over a few tens of MB may take a while.
Why does "10" sort after "9"?
When every non-empty value in a column is a number, the column is compared numerically (9, 10, 100). If even one value is not a number, the column is sorted as natural-order text instead.
What is exported after I remove or reorder columns?
Copy CSV and Download CSV write exactly what is shown: the filtered and sorted rows, and the columns that remain in their current order. The header row is included when the first row is used as the header.
My file shows garbled characters.
Files are read as UTF-8. A Shift_JIS or other legacy-encoded CSV will look garbled, so convert it to UTF-8 first and then open it.
Share this page
