CSV Viewer & Editor

Open a CSV — the plain-text file spreadsheets save rows and columns to — as a real table. Sort by any column, filter it down, edit cells in place, then save it back out in the same format.

How to use it

Open a file and every column can be sorted and filtered, which is how you find the one row that is wrong among thousands.

  1. Open your file Drop a CSV onto the box, or press choose a file.
  2. Sort and filter Click a column heading to sort by it, click again to reverse. Type in the filter box to narrow the rows.
  3. Edit cells Click into any cell and type. Changes are kept even while the table is sorted or filtered.
Full instructions

Drop a CSV file here

or

Your file is opened on this device. It is never uploaded.

In depth

Opening, sorting, editing and saving a CSV file without a spreadsheet

A CSV file opened in a text editor is a wall of commas and quotation marks. Opened in a spreadsheet it can mangle dates, strip leading zeros and take thirty seconds to load. This guide shows how the CSV Viewer and Editor turns a raw file into a clean table you can sort, filter, fix and save - all inside a browser tab, with nothing installed and nothing uploaded.

Screenshot: Looking at and tidying a CSV file
Looking at and tidying a CSV file as it appears when the page opens.

Who needs a CSV viewer and why

Anyone who receives data exports eventually receives a CSV. Sales figures from an e-commerce platform. Student grades from a learning system. Server logs from a hosting panel. Contact lists from a CRM. The file arrives and you need to check it before you do anything else.

Opening it in a full spreadsheet is overkill when you just want to glance at the columns, sort by one of them, fix a typo and send it on. It is also risky: Excel silently turns gene names into dates, strips leading zeros from barcodes, and sometimes changes the separator on save. A lightweight viewer avoids all of that.

Getting the file onto the page

There are two ways. Drag the CSV file from your desktop or file manager and drop it onto the box on the page. Or click the choose a file button and pick the file from a dialog. Either way, the file is read by your browser on your own device. It is never uploaded to a server.

The page also accepts TSV files (tab-separated) and semicolon-separated files common in Europe. The separator is detected automatically, so you do not need to tell the tool which one your file uses.

Press Try an example to load a small sample file. This is useful the first time you visit, so you can see how the table, sorting and editing work before loading your own data.

The table view and column headings

Once a file is loaded, the drop zone is replaced by a full table. If First row is the column names is ticked, which it is by default, the first row becomes the header. Each column heading is a clickable button.

Click a heading once to sort the table by that column in ascending order. Click it again to reverse the sort. A small arrow next to the heading shows the current direction. The sort is smarter than a plain alphabetical comparison: a column full of numbers is sorted as numbers, so 9 comes before 10 instead of after it. Text columns use natural ordering, which means item 2 lands before item 10.

Filtering rows to find what you need

The Find rows containing field narrows the table to rows that match what you type. Type London and only rows with London in any column appear. The match is case-insensitive, so london and LONDON work too.

The Look in dropdown lets you restrict the search to a single column. Set it to city and the filter only looks in that column, ignoring matches elsewhere. This is useful when a word appears in several columns but you only care about one.

Filtering does not delete rows. Clear the filter box and every row comes back. The filter is a view, not an edit.

Editing cells directly in the table

Click any cell and a cursor appears. Type to replace the content, or use backspace to correct it. Press Tab to move to the next cell. Your edits are kept even if you sort or filter the table afterwards. The data underneath remembers every change you made.

This is not a full spreadsheet. There are no formulas, no cell formatting, and no undo history. It is meant for quick fixes: correcting a misspelled name, updating a price, removing a value that should be blank. If you need to do heavy editing, export the fixed file and open it in proper spreadsheet software.

Tidying a messy file with Trim spaces and Remove empty rows

Real-world CSV files are rarely clean. A trailing space after a city name makes London and London with a space look like different values. The Trim spaces button strips leading and trailing whitespace from every cell in one click.

Empty rows - lines with nothing but commas - clutter the table and confuse software that reads the file later. The Remove empty rows button deletes them. Both of these operations work across the entire file, not just the visible page.

The Add a row button inserts a blank row at the bottom. This is handy when you need to type in one or two extra records before saving.

A worked example: cleaning a contact list

You receive a CSV with columns name, email, city. It has 400 rows. You drop it onto the page and the table appears. A quick scroll shows that some city names have trailing spaces, so you press Trim spaces. Done in one click.

You type London into Find rows containing and set Look in to city. The table shows 38 rows. You notice one row where the city says Londn - a typo. You click the cell, fix it to London, and clear the filter.

You sort by name to check for duplicates. Two rows have the same name but different emails, which is fine. Three rows at the bottom are completely empty, so you press Remove empty rows.

Finally, you press Save the CSV. A clean file downloads with the typo fixed, the spaces trimmed and the empty rows gone. The original file on your computer is untouched. The tool always creates a new file rather than writing over the old one.

Saving only a filtered subset

Tick Save only the filtered rows before pressing Save the CSV and the downloaded file contains only the rows currently shown. This lets you split a large file by filtering for a value and saving each batch separately.

For example, filter by a country column, save the UK rows as one file, clear the filter, filter again for France, and save those as another file. Each downloaded CSV has proper headers and clean quoting.

Why only 200 rows show at once

A file with fifty thousand rows would need fifty thousand rows in the page. Browsers slow down well before that point, and scrolling becomes painful. The table shows 200 rows at a time and a pager appears underneath with Previous and Next buttons.

This is only a display limit. Sorting, filtering and saving all work across every row in the file, not just the page you can see. If your filter matches 12 rows out of ten thousand, you see all 12 regardless of which page they were on.

Encoding and the Excel compatibility marker

The saved file is encoded as UTF-8 with a byte order mark at the start. That marker tells Excel the text is UTF-8, which stops accented characters and non-Latin scripts from turning into garbled symbols. Without it, Excel on some Windows systems guesses the wrong encoding.

The separator used when saving matches the one that was detected when you opened the file. If your original file used semicolons, the saved file uses semicolons too. Your data comes back in the same shape it arrived.

Common problems and what to do

All the data is in one column. The separator was not detected correctly. This sometimes happens with pipe-separated files or files that have very few columns. Open the file in a text editor, check what character sits between values, and save a copy with commas instead.

Numbers sort like text - 10 appears before 2. The column probably contains a mix of numbers and text, such as a trailing unit like 10 kg. The viewer sorts a column as numbers only when every cell in that column is a number. Remove the units and the sort will be numeric.

Accented characters look wrong. The source file may not be UTF-8. Save it from your original application with UTF-8 encoding selected, then open it again in the viewer.

When a full spreadsheet is the better tool

If you need formulas, pivot tables, conditional formatting, or charts, this viewer is not the right choice. It does not calculate, graph, or format. It reads, shows, sorts, filters and saves.

For files above a few hundred megabytes, the browser may slow down or run out of memory. A desktop application can handle those sizes because it reads the file from disk rather than holding it all in a page.

Privacy and local processing

Your file never leaves your device. It is read by the browser, displayed in the tab, and saved back to your downloads folder. No server is involved at any step. You can load the page once, disconnect from the internet, and keep working. There is no account, no upload queue, and no record of what you opened.

Help

Looking at and tidying a CSV file

Open a file and every column can be sorted and filtered, which is how you find the one row that is wrong among thousands. Fix it in the cell itself, then save the whole table back out as CSV, the same plain format it arrived in, ready for whatever program needs it next.

Open your file

Drop a CSV onto the box, or press choose a file.

Sort and filter

Click a column heading to sort by it, click again to reverse. Type in the filter box to narrow the rows.

Edit cells

Click into any cell and type. Changes are kept even while the table is sorted or filtered.

Save it back

Press Save the CSV. Tick save only the filtered rows to export a subset.

Why only 200 rows show at a time

A spreadsheet export with fifty thousand rows would need fifty thousand table rows in the page, and browsers slow to a crawl long before that. Building them a page at a time keeps everything instant however big the file is, which is why the pager appears on larger files. The whole file is still loaded and still edited in full: sorting, filtering and saving all work across every row, not just the page you can see. Sorting is also smarter than a plain alphabetical comparison. A column that contains only numbers is sorted numerically, so 9 comes before 10 rather than after it, and text columns use natural ordering so item 2 lands before item 10. That one difference is the single most common complaint about sorting in spreadsheet software.

Good to know

Filter then save to split a file

Type a value into the filter, tick save only the filtered rows, and you get just those records as a new CSV.

Trim spaces fixes invisible problems

A trailing space makes London and London different values. Trim spaces removes them from every cell at once.

Semicolon files just work

European exports often use semicolons instead of commas. The separator is detected and the same one is used when saving.

Editing is in the page, not the file

Nothing is written to your original file. You always get a new one when you press save.

Common questions

How do I open a CSV without Excel?
Drop it onto this page. It opens as a table you can read, sort, filter and edit, and nothing is installed or uploaded.
Can I edit cells?
Yes. Click into any cell and type. Press Save the CSV when you are done to download the edited file.
Why does sorting put 10 after 9 correctly?
Columns that hold only numbers are sorted as numbers, and text is sorted naturally, so numbered items order the way you expect.
Is my file uploaded anywhere?
No. It is read by your browser and stays on your device. You can disconnect from the internet after the page loads and it still works.
Is there a size limit?
None that we set. The limit is what your browser can hold in memory, which in practice means files of tens of megabytes are fine.
Will accented characters survive Excel?
Yes. The saved file includes a marker that tells Excel the text is UTF-8, which is what stops accents turning into nonsense.