Skip to content

CSV Viewer & Editor

CSV Viewer

Paste or upload any CSV and view it as a real table — sortable columns, searchable rows, and quick column-by-column statistics. Auto-detects the delimiter (comma, tab, semicolon, pipe), respects quoted fields containing commas, and handles UTF-8 with or without a byte-order mark. Everything renders in your browser; the file never uploads.

Why a Dedicated Viewer Beats Excel for Quick Looks

Opening a CSV in Excel triggers a chain of auto-conversions that frequently damage the data. Strings that look like dates get reformatted into Excel's local date format. Long numeric IDs get truncated to scientific notation and lose precision past the 15th digit. Leading zeros on ZIP codes vanish. None of this is malicious — Excel is just trying to be helpful — but for a quick read of an export to verify a row count or a column's contents, it's the wrong tool.

A viewer that displays the file exactly as it sits on disk is faster than Excel for the read case and safer for the verify case. For actual analysis — pivots, formulas, charts — Excel is still the right tool, and saving the file from this viewer into Excel after the verification step works fine.

How It Works

The tool reads the file via the browser's FileReader API. The first line gets analyzed for a likely delimiter by counting candidates (,, \t, ;, |) and picking the most frequent one. RFC 4180 quoting rules are followed: a field starting with \" extends to the matching closing quote, with doubled quotes inside (\"\") representing a literal quote character. UTF-8 byte-order marks are stripped from the first cell. Empty trailing rows are ignored.

The rendered table uses windowed rendering for files with more than a few thousand rows — only the visible rows are in the DOM at any given time, which keeps scrolling fluid even on multi-megabyte CSVs. Click a column header to sort by that column; click again to reverse; click a third time to clear the sort. The search box filters across all columns case-insensitively.

Common Use Cases

Verifying that an export contains what you expected before importing it into a database. Inspecting a customer-submitted CSV before mapping its columns to your schema. Diffing two CSVs row-by-row — export each as text and pipe through the text diff tool. Picking a few sample rows for a manual QA pass. Confirming the row count of a large export (100,000 rows parse in about a quarter of a second) without opening a spreadsheet program. Converting a semicolon- or tab-separated file to comma-separated: open it and export, since the CSV export always uses commas.

Worked example: five awkward files, checked against Python's csv module

A CSV viewer is only useful if it splits rows and columns the same way the program that wrote the file did. We ran the viewer's parser on five awkward files in Chromium on October 12, 2026 and compared every row with Python's standard csv module, which follows RFC 4180; all five matched exactly.

FileResult
Commas, line breaks and quotes inside quoted fields ("Smith, John", a two-line note, says ""hi"")Read as one field each
Semicolon-separated file with decimal commas (Preis;1,99), as German or French Excel savesSemicolon detected; 1,99 stays one value
Tab-separated values with commas inside fieldsTab detected
Header with a quoted comma ("city, state")Comma detected; header kept whole
UTF-8 with a byte-order mark, as Excel's "CSV UTF-8" export writesFirst header read cleanly (fixed on October 12, 2026: a pasted file kept the mark in the first column name)

The separator is picked by counting commas, tabs, semicolons and pipes on the first line and taking the most frequent, so a normal header line is enough. There is no manual separator setting, so if your file starts with a title or comment line, delete that line first. Parsing is fast: 10,000 rows (0.5 MB) took about 26 ms and 100,000 rows (5.2 MB) about 220 ms, and the table shows the rows page by page so the browser stays responsive. The file never leaves your browser.

Related tools

Frequently Asked Questions

What file formats can I open?+
CSV (comma-separated), TSV (tab-separated), and any text file with a consistent delimiter. The tool auto-detects the delimiter from your file.
Is there a file size limit?+
The tool works best with files under 10MB (roughly 100,000 rows). Larger files may slow down your browser since everything runs client-side.
Can I edit cells directly?+
Yes. Double-click any cell to edit it in place. You can also add new rows and columns, delete rows, and rename column headers.
What export formats are available?+
CSV (comma-separated), TSV (tab-separated), and JSON (array of objects). All exports include your edits and respect the current sort order.
Does this tool upload my data?+
No. Everything runs in your browser. Your CSV data never leaves your device — no server processing, no data collection.
Can I sort and filter data?+
Yes. Click any column header to sort ascending or descending. Use the search bar to filter rows across all columns in real time.
Can I open Excel files?+
This tool works with plain text CSV, TSV, and delimited files. For Excel (.xlsx) files, save them as CSV from Excel first, then open them here. Alternatively, use our dedicated spreadsheet tools.
Is there a row limit?+
There's no hard limit, but since everything runs in your browser, performance is best with files under 100,000 rows. The table paginates at 50 rows per page for smooth scrolling.
How does delimiter detection work?+
The tool analyzes the first line of your file and counts occurrences of common delimiters (comma, tab, semicolon, pipe). The most frequent one is used as the delimiter. This works correctly for the vast majority of real-world files.

📖 Learn More

Related Article How to View & Edit CSV Files Online — Complete Guide →

Built by Derek Giordano · Part of Ultimate Design Tools

Privacy Policy · Terms of Service