"category": "inspect-and-test",
CSV Viewer
"tldr": Paste CSV or open a file and read it as a real table - sticky headers, live row filtering, quoted fields parsed correctly.
Read CSV the way it was meant to be read - as a table. Paste content or open a .csv file and get sticky headers, numbered rows, live text filtering, and correct parsing of the hard parts: quoted fields, embedded commas, and multi-line values per RFC 4180.
Raw CSV in a text editor hides its problems - a shifted column from an unquoted comma looks fine until row 3,041. Rendering as a table makes misalignment instantly visible, which makes this as much a debugging tool as a viewer. Files open locally; nothing is uploaded.
How to view a CSV file
- 1Paste CSV text (first row = headers) or open a .csv file.
- 2The table renders with sticky headers and numbered rows.
- 3Type in the filter box to keep only rows containing your text.
- 4Need it as data? Convert the same content with CSV to JSON.
Convert CSV to Table in code
import pandas as pd
df = pd.read_csv("data.csv")
print(df.head(20)) # quick look
print(df.describe()) # column statscolumn -s, -t < data.csv | less -S # quick aligned view
# proper CSV tooling:
pip install csvkit && csvlook data.csvFrequently asked questions
My columns are shifted after a certain row - what is wrong?
Almost always an unquoted comma inside a value ("Smith, John" without quotes becomes two fields) or an unbalanced quote swallowing rows into one field. Find the first misaligned row in the table - the offending value is on that line of the source.
Does it handle semicolon- or tab-separated files?
This viewer parses comma-separated per RFC 4180. Semicolon CSVs (common from European Excel locales) render as one column - replace ; with , first, or export as real CSV. Tab-separated files: replace tabs with commas, or use Excel to JSON which reads TSV natively.
How large a file can I open?
Parsing handles megabytes easily; rendering caps at the first 500 matching rows to keep the browser responsive, with a note showing the true total. Filtering searches all rows, not just the rendered ones.
Last updated:
You might also need
Free and in-browser, like everything on JSON Console. Browse all tools →