Your files never leave your device. All processing happens locally in your browser.
How do I edit a CSV or Excel file in the browser without uploading it?
Open the CSV Editor, drop in a .csv, .tsv, .txt or Excel (.xlsx / .xlsm) file — or paste text, or fetch a CORS-enabled URL — and it renders as an editable grid instantly, entirely in your browser. Click any cell to edit it in place; use the toolbar to add, duplicate or delete rows, add or remove columns, and rename headers. Click a column header to sort (it’s number-aware, so 2 sorts before 10), and type in the filter box to show only matching rows — sorting and filtering never change your underlying data. It parses to the RFC 4180 standard, so quoted fields, embedded commas, escaped double-quotes (“”), newlines inside cells and a leading BOM are all handled, and it auto-detects whether your delimiter is a comma, tab, semicolon or pipe. Full undo / redo (Ctrl+Z, Ctrl+Shift+Z) covers the last 50 edits, arrow keys and Tab move between cells like a spreadsheet, and you can paste a block copied from Excel or Google Sheets straight across many cells. A virtualized table keeps 50,000+ rows scrolling smoothly. When you’re done, export to CSV (UTF-8 with a BOM and CRLF line endings so Excel opens it cleanly), JSON (an array of objects keyed by your headers), or a real .xlsx workbook — or copy the whole sheet as CSV. Everything runs on your device: the file is never uploaded to any server, so private or sensitive spreadsheets stay on your machine.
Edit any cell in place; add / duplicate / delete rows, add / remove columns, rename headers — nothing is uploaded
Number-aware sort, live row filter, undo / redo (50 steps), keyboard navigation and multi-cell paste from Excel or Sheets
Handles Excel (.xlsx / .xlsm) in and out, plus .csv / .tsv / .txt; a virtualized grid stays smooth at 50,000+ rows
Export to CSV (UTF-8 BOM, CRLF), JSON or .xlsx, or copy as CSV — 100% client-side, files up to 50 MB
What is
CSV Editor
A CSV editor is a tool that opens a comma-separated-values file (or a related delimited file such as TSV or an Excel sheet) as a table of rows and columns and lets you view, edit, sort, filter and re-export the data. CSV itself is a plain-text format where each line is a record and fields are separated by a delimiter; the de-facto standard is RFC 4180, which defines how fields containing the delimiter, a double-quote or a line break are wrapped in double-quotes, with a literal quote written as two quotes (“”). Real-world files complicate this — some use a semicolon or tab instead of a comma (common in European locales where the comma is the decimal mark), some carry a UTF-8 byte-order mark (BOM), and some embed newlines inside quoted cells — so a robust editor auto-detects the delimiter and parses to the RFC 4180 rules rather than naively splitting on commas. This CSV Editor is 100% client-side: it parses, edits and re-serialises the file in your browser with no upload, reads Excel workbooks via a bundled xlsx engine, virtualizes the grid so tens of thousands of rows stay responsive, and can export back to CSV, JSON or .xlsx. Its honest limits: it edits a single flat sheet (no formulas, multiple tabs, cell formatting or charts), very large files are bounded by browser memory (a 50 MB cap), and fetching a remote URL only works if that server sends permissive CORS headers.
File Tools
Related terms
CSVRFC 4180delimiterTSVExcelxlsxspreadsheetcomma-separated valuesBOMUTF-8JSONdata gridCSV to ExcelCSV to JSON
Frequently Asked Questions
No. The file is parsed and edited entirely in your browser — there is no upload, server or account, so your data never leaves your device.
Nothing is uploaded. When you open a file the CSV Editor reads it locally with the browser’s File API, parses it into an in-memory table, and every edit, sort, filter and export happens on your device in JavaScript. There is no server, API, database or tracking in the processing path, so a spreadsheet of customers, finances or any other sensitive data stays on your machine. The tool works offline once cached, and closing the tab discards everything. The one case where data touches the network is if you paste a remote URL for the tool to fetch — and even then the response is downloaded straight into your browser and never sent anywhere else. The only optional network use anywhere on the site is consent-gated advertising, which never sees your file.
Yes. It reads .xlsx and .xlsm workbooks (first sheet) into the grid and can export your edits back to a real .xlsx file, as well as CSV and JSON.
The CSV Editor handles Excel both ways. When you upload an .xlsx or .xlsm file it uses a bundled spreadsheet engine to read the first worksheet, flattening rich text and dates into plain cell values, and loads it into the editable grid alongside plain .csv, .tsv and .txt files. When you export, “Excel” produces a genuine .xlsx workbook — a bold header row, auto-sized columns, and values that look like numbers written as real numbers so Excel treats them numerically. You can also export CSV (UTF-8 with a BOM and CRLF line endings, which makes Excel open accented characters correctly) or JSON (an array of objects keyed by your column headers). One caveat: it edits a single flat sheet, so multiple tabs, formulas, cell styling and charts are not preserved — it is a fast data editor, not a full spreadsheet application.
It parses to the RFC 4180 standard, so quoted fields, embedded commas, escaped “” quotes and newlines inside cells are read and written correctly.
CSV looks simple but breaks the moment a value contains the delimiter, a quote or a line break, so this editor follows RFC 4180 rather than splitting naively on commas. A field wrapped in double-quotes may contain the delimiter, actual line breaks, and literal double-quotes written as two quotes in a row (“”) — the parser tracks quote state to read all of these, and it strips a leading UTF-8 BOM if present. It also auto-detects the delimiter by sampling the start of the file and scoring commas, tabs, semicolons and pipes, which matters for European exports that use semicolons or for TSV files. On the way out it re-quotes any field that contains the delimiter, a quote or a newline and doubles internal quotes, so a value you typed with a comma in it round-trips safely instead of splitting into two columns.
Tens of thousands — the grid is virtualized so 50,000+ rows stay smooth, with an overall file cap of 50 MB set by browser memory.
The table is virtualized, meaning it only renders the handful of rows visible in the scroll viewport plus a small buffer, so a file with 50,000 or more rows scrolls, sorts and filters without freezing the page. Editing, undo / redo and multi-cell paste all operate on the in-memory data, so they stay fast at scale. Because everything is held in your browser’s memory, there is a practical ceiling: the tool accepts files up to 50 MB, and extremely large or wide files will use more RAM and can slow down on low-memory devices. For most exports, contact lists, product feeds and analytics dumps this is comfortable headroom; for multi-gigabyte data warehouse extracts a database or command-line tool is the better fit.
Detailed Explanation
📖How It Works
Editing CSV and Excel Files in Your Browser
The CSV Editor turns a delimited file into an editable spreadsheet-style grid without ever uploading it. Drop in a .csv, .tsv or .txt file, an Excel workbook (.xlsx / .xlsm), pasted text, or a CORS-enabled URL, and it renders instantly as rows and columns you can edit in place. Click a cell to change its value; use the toolbar to add, duplicate or delete rows, add or remove columns, and rename headers. Click a column header to sort — the sort is number-aware, so 2 comes before 10 rather than after it — and type in the filter box to show only rows that match, without altering the underlying data. It parses to the RFC 4180 standard, so quoted fields, embedded commas, escaped double-quotes and newlines inside cells all survive, and it auto-detects whether the delimiter is a comma, tab, semicolon or pipe. Everything — parsing, editing, sorting, filtering and export — runs locally in JavaScript, so a sensitive spreadsheet never leaves your machine.
Opens .csv, .tsv, .txt and Excel .xlsx / .xlsm, plus pasted text or a CORS-enabled URL
Number-aware column sort and a live row filter that never mutate the source data
100% client-side — nothing is uploaded to any server
📋Use Cases
Fast Fixes on Real-World Data Files
The CSV Editor is built for the everyday jobs that a full spreadsheet app makes heavy: cleaning an exported contact list, fixing a product feed before re-import, deduplicating or spot-editing an analytics dump, or converting a supplier’s Excel sheet into CSV or JSON. Because it opens files locally and instantly, it suits data you would rather not upload — customer records, payroll, anything under an NDA. Spreadsheet-style ergonomics make edits quick: arrow keys and Enter move down, Tab moves across (wrapping to the next row), and you can select a block in Excel or Google Sheets and paste it straight across many cells at once, with the grid expanding to fit. Undo and redo cover the last 50 changes (Ctrl+Z, Ctrl+Shift+Z), and a virtualized table keeps 50,000+ rows scrolling smoothly. When the data is right, one click exports CSV, JSON or a real .xlsx workbook, or copies the whole sheet as CSV to paste elsewhere.
Clean exports, fix feeds, convert Excel ↔ CSV / JSON, spot-edit large dumps — all offline
Keyboard navigation (arrows / Enter / Tab) and multi-cell paste from Excel or Google Sheets
Undo / redo up to 50 steps; virtualized grid stays responsive at 50,000+ rows
One-click export to CSV, JSON or .xlsx, or copy the sheet as CSV
🔧Technical Details
RFC 4180 Parsing, Delimiter Detection and Virtualization
A hand-written state-machine parser reads the file to the RFC 4180 rules. It tracks quote state so a field wrapped in double-quotes can contain the delimiter, real line breaks and literal double-quotes written as two quotes in a row; it strips a leading UTF-8 byte-order mark (BOM); and it handles both CRLF and LF line endings. The delimiter is auto-detected by sampling the first few kilobytes and scoring commas, tabs, semicolons and pipes outside of quotes, which correctly handles European semicolon exports and tab-separated files. Excel files are read with a bundled xlsx engine that flattens rich text and dates into plain cell values. Rendering uses windowed virtualization: only the rows within the scroll viewport (plus a small overscan buffer) are mounted, with padding spacers preserving the scrollbar, so tens of thousands of rows stay smooth. On export, the serialiser re-quotes any field containing the delimiter, a quote or a newline and doubles internal quotes; CSV is emitted as UTF-8 with a BOM and CRLF endings, JSON as an array of objects keyed by the headers, and .xlsx via the same engine with a bold header row, auto-sized columns and numeric-looking values written as real numbers.
Quote-aware RFC 4180 state machine: embedded commas / quotes / newlines and BOM handled; CRLF and LF supported
Delimiter auto-detected (comma / tab / semicolon / pipe) by scoring a sample outside quotes
Windowed virtualization mounts only visible rows + overscan, so 50,000+ rows stay smooth
Export re-quotes and doubles quotes correctly; CSV is UTF-8 BOM + CRLF, JSON is header-keyed objects, .xlsx is a real workbook
⚠️Limitations
Honest Limitations
The CSV Editor is a fast, flat-table editor, not a spreadsheet application. It works on a single sheet, so it does not evaluate formulas, keep multiple tabs, preserve cell formatting, colours, merged cells or charts, or round-trip Excel styling — opening an .xlsx reads its first worksheet as plain values, and exporting produces a clean but unstyled workbook. Everything is held in browser memory, so size is bounded: the tool accepts files up to 50 MB, and very large or very wide files use more RAM and can slow down on low-memory devices, where a database or command-line tool is a better fit than a browser tab. Loading data from a remote URL only works when that server sends permissive CORS headers; many hosts do not, and the fetch will fail with a clear message rather than silently. Sorting compares values as numbers when both cells parse as numbers and otherwise as text, so mixed columns fall back to string ordering; and while the parser follows RFC 4180, files that violate the spec (unescaped stray quotes, ragged row lengths) are read on a best-effort basis and padded to a consistent column count.
Single flat sheet — no formulas, multiple tabs, cell formatting, merged cells or charts
Bounded by browser memory; 50 MB file cap, and very large files can strain low-memory devices
Remote-URL loading needs permissive CORS on the source server, or the fetch fails with a clear error
Sort is numeric only when both cells are numbers; malformed CSV is read best-effort and padded to a consistent width
🔒Privacy & Security
Privacy: Your Spreadsheet Stays on Your Device
CSV and Excel files often hold exactly the data you should not upload — customer lists, financials, health or HR records — and this editor is built so they never leave your machine. The file is read with the browser’s File API, parsed into an in-memory table, and every edit, sort, filter and export happens locally in JavaScript, with no server, upload, database, logging, API or CDN anywhere in the processing path. The tool works offline once cached, and closing the tab discards the data entirely. The only moment anything touches the network is if you explicitly paste a remote URL for the tool to fetch, and even then the response is downloaded straight into your browser and sent nowhere else. The only optional network use anywhere on the site is consent-gated advertising, which never sees your file or its contents.
Read, parsed, edited and re-serialised entirely in the browser
No server, upload, database, API or CDN in the processing path
Works offline once cached; closing the tab discards everything
Only optional network use is consent-gated ads, which never see your file
CSV Editor — formats, capabilities and limits
Capability
Support
Notes
Input formats
.csv, .tsv, .txt, .xlsx, .xlsm
Also pasted delimited text or a CORS-enabled remote URL; first worksheet read from Excel
Delimiters
Comma, tab, semicolon, pipe
Auto-detected by scoring a sample outside quotes; handles European semicolon exports and TSV
Parsing standard
RFC 4180
Quoted fields, embedded commas / newlines, escaped “” quotes and a UTF-8 BOM handled
CSV is UTF-8 BOM + CRLF; JSON is header-keyed objects; .xlsx is a real workbook with a bold header row
Scale & privacy
50,000+ rows, up to 50 MB
Virtualized grid; 100% client-side with no upload (single flat sheet — no formulas, tabs, styling or charts)
The CSV Editor parses to the RFC 4180 standard with automatic delimiter detection (comma / tab / semicolon / pipe), reads and writes Excel (.xlsx / .xlsm), and virtualizes the grid so 50,000+ rows stay smooth. It edits a single flat sheet — no formulas, multiple tabs, cell formatting or charts — is bounded by a 50 MB browser-memory cap, and remote-URL loading needs permissive CORS. Everything runs in the browser; nothing is uploaded.