CSV Filter
Keep the rows you need.
Choose your columns and rules. Preview and save the rows that matter.
Runs in your browser.
Your data stays on your device.
Paste CSV, or open a UTF-8 file.
Reading settings
Headers are retained and excluded from row counts. Columns are identified by position.
Auto-detect tries comma, semicolon, tab and pipe. Check the preview; choose a delimiter if columns look wrong. Exports use this delimiter.
2. Set your filter rules
Read your CSV to choose columns. Each run filters the original input.
3. Preview and save
No filtered result yet
Enable JavaScript to filter CSV.
Download CSVScroll within the table to see more columns. With the table focused, use the arrow keys.
Copy and download include all kept rows and the header, if selected.
How it works
- Load your data
Open a UTF-8 CSV file or paste your data. Check the delimiter, header and input preview.
- Set filter rules
Choose columns, operators and values. Keep or remove rows matching all or any rules.
- Preview and export
Apply filters, inspect the kept rows, then copy or download your CSV.
Good to know
Text and numeric comparisons
Text compares literal values. Numeric rules compare exact decimals without rounding large integers. Dates remain text.
Empty and missing fields
Empty cells, whitespace and missing fields are different. Choose Is empty, Is blank or Is missing to match the values you need.
Preserved values, normalized CSV
Exports keep every selected field and original row order. CSV quoting and record endings are normalized; details are below.
Frequently asked questions
Does my CSV leave my device?
Reading, filtering and export run in your browser. This tool does not upload, persist or log your file contents or names.
What happens when no rows match?
Keep mode produces a header-only CSV when a header is selected, or an empty file without a header. Remove mode keeps all original data rows. Counts show the outcome.
Can I combine rules?
Yes. Add as many rules as needed. All requires every rule to match; Any requires at least one. Apply filters always starts from your original input.
Can I use regular expressions or formulas?
Rules use literal text, exact decimal comparisons and field-presence checks. They do not run expressions or formulas.
How do text and numeric comparisons work?
Text rules preserve whitespace and compare literally. Turn off case sensitivity for Unicode lowercase comparison; accents are not normalized. Numeric rules compare exact decimals, including signs and exponent notation, without rounding large integers. Surrounding numeric whitespace is ignored. Blank, missing, hexadecimal, NaN and Infinity values never match a numeric rule, including ‘does not equal’. Dates are plain text.
How are empty, blank and missing fields different?
‘Is empty’ matches a present zero-length field. ‘Is blank’ also matches whitespace. ‘Is missing’ matches an absent field in a short row. All other rules require a present field. Uneven rows keep their original field counts. An empty text value is valid: contains, starts with and ends with an empty value match every present field. Column positions distinguish duplicate and empty header names.
What does the exported CSV preserve or change?
Kept rows retain their order, full fields, leading zeros, Unicode, quoted delimiters and embedded newlines. Exports quote every field, use CRLF record separators and UTF-8 without a BOM; original quoting and a final record terminator are not preserved. Pasted line endings follow the browser’s LF convention; use a file to preserve embedded CRLF. Formula-like fields remain unchanged and inert here; a spreadsheet may interpret them when opened.
Are there limits, and can I cancel?
There is no fixed file or row limit. Input, parsed rows and output must fit browser memory. Processing runs in your browser. Cancel stops processing and clears rules and results while retaining input; Reset clears input too. Preview windows show 25 rows and 8 columns at a time; exports include every kept field.