CSV search, filter & transform

Load your data, filter rows and shape the output. Download as CSV, JSON or JavaScript.

Your data stays in this browser. Nothing is uploaded. Privacy details

1 Load data

Comma-separated UTF-8 data with a header row. Up to 5 MiB, 20,000 rows and 100 columns.

Or paste CSV data

Load a file or paste CSV data to begin.

2 Filter rows

No data loaded
Search filters

Leave blank to keep every row. Positive searches match any term in any searched column.

Filters update the result automatically.

3 Change values optional

Set a column value or find and replace literal text within a column. Changes run from top to bottom on filtered rows. Empty replacement values clear cells or remove the found text.

Changes affect the output only. Your loaded data stays available.

4 Add rows optional

0 added rows

Enter a value for each original column, then add the row to the output. Blank values are allowed. Added rows bypass search filters and value changes, then take part in duplicate removal and sorting.

New row values

Load data to add rows.

5 Remove duplicates and sort optional

Duplicate removal and sorting

Sort rows

Add columns in priority order. Text uses case-sensitive character order; number mode accepts decimal numbers. Empty cells sort last in both directions. Equal values keep their original order.

Duplicate removal and sorting are off.

6 Arrange output columns

Choose which columns to include, rename their output headers, and use the arrows to reorder them. Search and value changes use the original column names.

Load data to choose output columns.

7 Preview and export

0 rows
Export options

Source record, matched criteria and matched columns are added before your chosen columns. Added rows are labelled “Manual”.

Prefixes cells starting with =, +, -, @, tabs or line breaks with an apostrophe where needed. Turn off to preserve raw text exactly.

Your output will appear here.

Row preview

First 100 output rows

No data loaded.

View formatted output

Preview limited to 30,000 characters. Copy and download include the complete output.

How the suite works

Load a CSV file or open “Or paste CSV data” and select Load pasted data. Loading replaces the current dataset and resets filters, value changes, manual rows, sorting and output columns.

Search terms are matched as text, with one term per line. Blank lines and duplicate terms are ignored. “Does not contain” excludes a row if any term occurs in any searched column. Leaving search blank keeps all rows for text constraints. Empty-cell constraints ignore search terms and can require any or all searched columns to match.

Changes run from top to bottom on filtered rows. Find and replace changes every literal occurrence, with an optional case-sensitive match. Clearing changes restores the loaded values. Manual rows are appended afterwards. Duplicate removal keeps the first occurrence, then sorting runs before column arrangement and export. Column selection, order and output names apply to every export format. Renamed columns must be unique and non-empty.

Privacy and limits

Files, pasted text and results remain in memory in this browser. They are not uploaded, saved in browser storage or included in URLs. Copy writes to the clipboard only when selected. Reloading or Reset suite clears the data. Only the site’s theme preference is stored. See privacy and analytics.

Supports comma delimiters, quoted cells, doubled quotes and embedded line breaks. Invalid quoting and uneven row widths are rejected. Blank lines are skipped. Blank and duplicate headers receive unique names. Source record numbers count CSV records, including the header, rather than physical lines.

Limits: 5 MiB UTF-8 input, 20,000 data or output rows, 100 columns, 500,000 cells, 100 distinct search terms, 5 million search comparisons and 20 million output characters. Use up to 100 value changes and one sort rule per loaded column. Find text, replacement text and manual cells each allow up to 10,000 characters. Large work may briefly pause the page. No external libraries or services are used.