Column maps for Shopify, Amazon, banks, and CRMs. Verbatim error strings from QuickBooks, Xero, and the platforms themselves. Cookbook examples for the patterns that actually break — variant rows that look like duplicates, curly quotes from a Word paste, day-of-week date suffixes. Every page runs the same browser-native engine.
References with full column maps, real platform error strings, and cookbook examples — the deepest cuts.
Sanity-check an HR roster or payroll CSV in your browser before importing into Workday, BambooHR, or your payroll tool. Catches blank `Employee ID` / `Email` cells in mostly-filled columns, duplicate employee keys, row-width drift, encoding corruption in multilingual names, and typo'd department codes — without uploading any PII.
Open referenceSanity-check a Google Ads Editor / bulk-sheet CSV in your browser before you import. Catches text in `Max CPC` / `Budget` / `Final URL` numeric columns, row-width drift from commas in ad copy, encoding corruption, blank cells in mostly-filled columns, and duplicate IDs — entirely on-device.
Open referenceFlip a survey export whose orientation is wrong — questions down the rows, respondents across the columns — into the respondent-per-row shape that Excel, SPSS, and Tableau expect. A raw row/column flip: values are preserved, the header row becomes the first column, ragged rows are padded. Browser-local, no upload.
Open referenceFlip a time-series CSV's orientation — dates down the rows become dates across the columns, or metrics-as-rows become metrics-as-columns. Important: this is a raw row/column transpose, NOT a long-to-wide pivot. It does not reshape on a key column. Read here for what it actually does and when to use pandas instead.
Open referenceReshape a product export so attributes that were down the rows become columns. A raw row/column transpose: it does not group by SKU or pivot an EAV (entity-attribute-value) table. Read here for what the flip actually does to a product feed and when you need a real pivot instead.
Open referenceFlip experiment results between variant-per-row and variant-per-column so your comparison table reads the way stakeholders expect. A raw row/column transpose: values are preserved, the header row becomes the first column, ragged rows are padded — no aggregation or stat recompute. Browser-local, no upload.
Open referenceClean a CSV file online — remove empty rows, trim whitespace, deduplicate, and repair malformed rows. Free, browser-based, no upload.
Fix the four predictable problems with survey-platform CSV exports in one pass: Google Forms writing UTF-8 without a BOM (so Excel on Windows mojibakes the é and ñ), curly quotes from mobile autocorrect in free-text answers, CHAR(160) NBSPs from paste-into-textarea responses, and duplicate submissions from respondents hitting refresh. Browser-only — survey PII never leaves the tab.
OpenFix the predictable shape problems in subscriber-list exports from Mailchimp (ZIP of four status CSVs), Klaviyo (700-column cap, JSON-array list properties), and Kit / ConvertKit (tags + location columns) before re-importing or migrating to a new platform. Catches the case-insensitive duplicates Mailchimp rejects, the trailing-space emails Klaviyo flags as invalid, and the embedded line breaks that misalign rows.
OpenNormalise tab-vs-comma delimiters, CRLF-vs-LF line endings, UTF-8-vs-Latin-1 encoding, and column padding from `psql \copy`, `mysqldump --tab`, and `sqlite3 .mode csv` exports — in one pass before re-importing to a different database, loading into pandas, or opening in Excel. Browser-only — your database rows never leave the tab.
OpenFix the CHAR(160) non-breaking spaces (`\xa0` from ` `), curly quotes from CMS-styled content, Latin-1 / Windows-1252 mojibake from older source pages, and the UTF-8-without-BOM that mojibakes again in Excel — all in one pass. Pandas' own docs say 'expect to do cleanup after calling read_html()'; this is the cleanup. Browser-only — your scraped data never leaves the tab.
OpenStrip GA4's 5-row metadata preamble (date range + sampling notice + property name), concatenate Google Search Console's two-CSV ZIP (performance + filters), normalise URL casing for cross-export dedup, and add the UTF-8 BOM Excel-on-Windows needs to auto-detect encoding. Browser-only — GA4 / GSC data never leaves the tab.
OpenMerge multiple CSV files online by matching headers by column name. Free for 2 files, Pro for 3+ files. Browser-based, no upload.
Combine Shopify product, customer, or order CSV exports into one file when you've batched the export to stay under Shopify's documented 15 MB per-file limit, when a >100-variant product forced an emailed split, or when you need to concatenate monthly orders for a year-end report. Header-matched, browser-local, variant-pattern-aware.
OpenConcatenate 12 monthly Chase / Wells Fargo / HSBC / Lloyds / Barclays / Monzo / Revolut / Starling exports into one annual CSV for tax-season filing, accountant handoff, or year-end reconciliation. Same-bank monthly exports share schema — pure header-matched merge works without renaming. For cross-bank merges (different schemas) or QuickBooks re-import, links to the multi-tool workflow.
OpenCombine Google Forms, Typeform, SurveyMonkey, Microsoft Forms, and Jotform response exports into one CSV for analysis — whether you batched a large export, duplicated a form per cohort or region, or edited a question mid-collection. Columns matched by question text, browser-local, no upload.
OpenRun a CSV sanity check in your browser. Find row-width drift, type mismatches, duplicate headers, encoding issues, and empty cells.
Sanity-check Amazon Seller Central inventory templates (Inventory Loader, Listing Loader, category-specific flat files) in your browser before upload. Catches row-width drift, type drift in `price`/`quantity`, malformed product-ids, encoding mojibake from Excel saves, duplicate `seller-sku` rows, and the silent shape problems that produce error 8005 / 8541 / 8016 in the post-upload Seller Central processing report.
OpenSanity-check a Shopify product CSV in your browser before you hit Import. Catches row-width drift from commas inside `Body (HTML)`, type drift in `Variant Price` / `Variant Inventory Qty`, duplicate `Handle` rows, duplicate header rows, and encoding mojibake from Excel saves — the silent shape problems that make Shopify's import skip rows or report 'we couldn't import some products'.
OpenSanity-check a bank, invoice, or ledger CSV in your browser before importing into QuickBooks, Xero, or Wave. Catches text in `Amount` / `Debit` / `Credit` columns, row-width drift, encoding corruption, blank cells in mostly-filled columns, and duplicate transaction IDs — without uploading a single figure.
OpenSanity-check an HR roster or payroll CSV in your browser before importing into Workday, BambooHR, or your payroll tool. Catches blank `Employee ID` / `Email` cells in mostly-filled columns, duplicate employee keys, row-width drift, encoding corruption in multilingual names, and typo'd department codes — without uploading any PII.
OpenSanity-check a Google Ads Editor / bulk-sheet CSV in your browser before you import. Catches text in `Max CPC` / `Budget` / `Final URL` numeric columns, row-width drift from commas in ad copy, encoding corruption, blank cells in mostly-filled columns, and duplicate IDs — entirely on-device.
OpenRemove duplicate CSV rows by choosing a unique key column like Email, SKU, phone, or ID. Browser-based, no upload.
Remove duplicate marketing leads by choosing Email, Phone, CRM ID, or another single key column. Keeps the first row per key, treats case-insensitively by default, and preserves rows with a blank key. Runs in your browser — lead PII never leaves your machine.
OpenCollapse duplicate customer rows by selecting Email or Customer ID as the single unique key. Keeps the first matching row, matches case-insensitively by default, and preserves rows with a blank key. Browser-local — no customer data is uploaded.
OpenDeduplicate a product or inventory CSV by SKU, ASIN, barcode, or product ID — one key column at a time. Keeps the first row per SKU, with optional case-sensitive matching for case-distinct identifiers. Browser-local, no upload.
OpenCollapse repeated order rows in Shopify, WooCommerce, or Magento exports by choosing Order ID as the single key. Keeps the first row per order, matches case-insensitively by default, and preserves rows with a blank order number. Browser-local, no upload.
OpenRemove duplicate event registrations by choosing Email or Ticket ID as the single key. Keeps the first row per registrant, matches case-insensitively by default, and preserves rows with a blank key. Runs in your browser — attendee data is never uploaded.
OpenSelect and delete any columns from a CSV file in your browser. Strip PII, internal codes, or unwanted fields before sharing. No upload required.
Drop `CostPrice`, `Margin`, `SupplierID`, and internal-note columns from a product feed CSV before sharing with Amazon, Google Merchant Center, channel partners, or an agency. Runs locally in your browser — the feed never leaves your network — and the removal is positional, so the columns you keep (title, GTIN, price) stay byte-for-byte intact.
OpenStrip name, email, phone, address, and other personal-data columns from a CSV before handing it to an analyst, agency, or third-party tool. The file is parsed and stripped entirely in your browser — PII never reaches a server — and removal is positional, so the analytical columns you keep are preserved exactly.
OpenMost import failures come from extra columns confusing the field mapper, not bad data. Remove every column your target system (QuickBooks, Salesforce, a custom DB) doesn't expect, keep only the required fields, and download a trimmed CSV. Removal is positional and browser-local — kept columns stay byte-for-byte intact.
OpenDrop raw event dimensions, empty metric columns, and internal IDs from a GA4, Amplitude, or Mixpanel CSV export so only the KPIs your dashboard needs remain. Lighter files load faster in Looker Studio and Tableau, and removal is positional and browser-local — the metrics you keep stay exact.
OpenStrip non-essential columns from a contact CSV before mail merge in Word, Google Docs, Outlook, or an email platform. Keeps only the merge fields you actually reference, so the field picker is clean and you never merge an internal note into a letter. Removal is positional and browser-local.
OpenDrag-and-drop CSV columns into any order to match your import template. Browser-based, no upload, instant download.
Rearrange a supplier or ERP product CSV so the columns line up with Shopify's product-import template (Handle, Title, Body (HTML), Vendor, then options, variants, and image fields). Runs in your browser with up/down arrows — no drag plugin, no upload — and never changes a single cell value, so SKUs, prices, and HTML descriptions survive untouched.
OpenMove the Date, Description, and Amount columns of a bank or transaction CSV into the order QuickBooks Online's 3-column upload expects, so you avoid re-mapping every field in the import wizard. Browser-local with up/down arrows, no upload, and cell values (dates, amounts, memos) are never changed.
OpenRearrange contact, lead, or account CSV columns so they line up with the field order the Salesforce Data Import Wizard expects, cutting the time you spend mapping fields. Browser-local with up/down arrows, no upload — CRM data stays on your machine and cell values are never changed.
OpenRestore the intended column order in a CSV that Excel scrambled through cut/paste, column insertion, or multi-sheet consolidation. Reorder with up/down arrows in your browser — no upload, every cell value preserved — and download a corrected CSV in one pass instead of dragging columns around the spreadsheet.
OpenMove Location, SKU, and Quantity to the front of a pick-list CSV so pickers read down the sheet without scrolling right. Reorder with up/down arrows in your browser — no upload, every value preserved — without touching your WMS or 3PL export configuration.
OpenRename one or all column headers in a CSV file to match your target schema. Perfect for platform migrations. Browser-based, no upload.
Rename a source CSV's column headers to the exact Salesforce API field names (`FirstName`, `Email`, `Lead_Source__c`) before importing Contacts, Leads, or Accounts with Data Import Wizard or Data Loader. Type the target name next to each current header; only the header row changes — every data row passes through byte-for-byte. Runs in your browser via PapaParse, so CRM records never leave your machine.
OpenRename a bank statement CSV's column headers to the names Xero's Import a Statement screen expects — Date, Amount, Payee, Description, Reference — so the import stops rejecting your file. Type the Xero name next to each bank header; only the header row changes, transaction dates and amounts pass through untouched. Browser-local via PapaParse.
OpenTurn machine column names from an API or warehouse export — `user_id`, `created_at`, `total_amount_gbp` — into readable display names like User ID, Created, and Total (£) before sending a report to non-technical stakeholders. Type the friendly name next to each key; only the header row changes, the data is untouched. Browser-local via PapaParse.
OpenMap a spreadsheet or legacy export's column names to your database table's field names (`Customer Name` → `customer_name`) before a bulk INSERT, LOAD DATA, COPY, or migration-tool import. Type the schema name next to each header; only the header row changes, every data row is preserved. Browser-local via PapaParse — no upload.
OpenRename inconsistent headers across supplier, partner, and multi-system CSV exports — Qty, Quantity, Units, stock_count — to one agreed schema (sku, quantity, price_gbp, supplier) so the Merger and your pipeline don't create duplicate columns. Renames each file one at a time; only the header row changes. Browser-local via PapaParse.
OpenExtract a specific number of rows from a CSV file — set a row limit and optional offset to sample, test, or batch data. Browser-based, no upload.
Slice the first N data rows out of a big CSV to build a lightweight sample for pipeline development, dashboard mockups, or stakeholder review. Two controls — row limit and offset — run in your browser, header always kept, no upload.
OpenTrim a CSV to a small batch before testing a bulk API endpoint, Shopify import, or database load — catch mapping errors on 10 rows instead of 10,000. Two controls, browser-local, header always kept, no upload.
OpenTrim a Stripe, PayPal, or store transaction export down to the rows you need for a monthly reconciliation — sort by date, then slice the top N. Browser-local, header kept, no upload.
OpenSlice 20–50 representative rows from a real production export into a small, reviewable, reproducible CSV fixture for your automated tests. Browser-local, header kept, no upload.
OpenPull the first 100–500 rows from a large CSV to inspect column names, structure, and data quality before committing to a full import or pipeline run. Browser-local, header kept, no upload.
OpenTranspose any CSV file online — swap rows and columns instantly for pivot-ready data. Browser-based, no upload required.
Flip a period-per-row P&L, balance sheet, or budget export into a period-per-column layout for charting and reporting. A raw row-to-column transpose (not a pivot-table aggregation): every cell keeps its value, the header row becomes the first column, and ragged rows are padded. Runs entirely in your browser — no upload.
OpenFlip a survey export whose orientation is wrong — questions down the rows, respondents across the columns — into the respondent-per-row shape that Excel, SPSS, and Tableau expect. A raw row/column flip: values are preserved, the header row becomes the first column, ragged rows are padded. Browser-local, no upload.
OpenFlip a time-series CSV's orientation — dates down the rows become dates across the columns, or metrics-as-rows become metrics-as-columns. Important: this is a raw row/column transpose, NOT a long-to-wide pivot. It does not reshape on a key column. Read here for what it actually does and when to use pandas instead.
OpenReshape a product export so attributes that were down the rows become columns. A raw row/column transpose: it does not group by SKU or pivot an EAV (entity-attribute-value) table. Read here for what the flip actually does to a product feed and when you need a real pivot instead.
OpenFlip experiment results between variant-per-row and variant-per-column so your comparison table reads the way stakeholders expect. A raw row/column transpose: values are preserved, the header row becomes the first column, ragged rows are padded — no aggregation or stat recompute. Browser-local, no upload.
OpenConvert text case in selected CSV columns — UPPERCASE, lowercase, Title Case, or Sentence case. Browser-based, no upload.
Normalise an email column to lowercase across a CSV contact list before deduplicating, importing into an ESP, or running deliverability checks. Header row untouched, browser-local, free up to 2 MB / 500 rows.
OpenStandardise product-name capitalisation to Title Case across a multi-supplier product feed. Fix ALL-CAPS and all-lowercase titles in one pass — but know how the naive Title Case treats SKUs, brands like iPhone, and hyphens. Browser-local, free.
OpenNormalise a SKU column to UPPERCASE across product, inventory, or order CSVs so case-sensitive WMS and ERP systems stop creating phantom mismatches. Header preserved, browser-local, free to 2 MB / 500 rows.
OpenNormalise status, type, and category columns to lowercase in a CSV before bulk-importing into PostgreSQL, MySQL, or SQLite so case-sensitive WHERE clauses and JOINs work from day one. Header preserved, browser-local.
OpenConvert contact-name columns from ALL CAPS or all-lowercase to Title Case (proper case) before importing into a CRM, ESP, or mail merge — with a clear-eyed look at how it handles McDonald, O'Brien, and hyphenated surnames. Browser-local.
OpenRemove leading and trailing whitespace from every cell in a CSV file. Fix hidden spaces causing import failures. Browser-based, no upload.
Remove leading and trailing spaces from Shopify product handles, SKUs, and barcodes before re-import to stop duplicate products and 404 handles. Free, browser-local.
OpenRemove leading and trailing spaces from email and name columns before importing into Mailchimp, Klaviyo, or any ESP to stop invalid-format skips and broken deduplication. Free, browser-local.
OpenRemove leading and trailing spaces from amount, reference, date, and account-code columns in a CSV before importing into QuickBooks, Xero, or FreeAgent to stop numeric-parse failures. Free, browser-local.
OpenRemove leading and trailing spaces from string columns in a CSV before bulk INSERT into MySQL, PostgreSQL, or SQLite, so WHERE and JOIN clauses match. Free, browser-local.
OpenRemove leading and trailing spaces from name, email, phone, and company fields in a contact CSV before importing into HubSpot, Salesforce, or Pipedrive to fix duplicate detection. Free, browser-local.
OpenDelete all blank rows from a CSV file instantly. Cleans up exports with padding rows, copy-paste artefacts, or template gaps. Browser-based, no upload.
Strip the fully-empty rows Excel leaves behind when you delete rows, add visual spacing, or stack a summary table under a data block, then save the sheet as CSV. Runs entirely in your browser — drop the file, every row where all cells are empty is removed in one automatic pass, and the cleaned CSV downloads with no upload.
OpenGoogle Sheets exports every row in the sheet's used range — including the blank rows you added for visual grouping, the spacer above a header, and the gaps from deleted rows. Drop the downloaded CSV (or TSV) here and every fully-empty row is removed in one automatic, browser-local pass.
OpenStrip the stray empty rows that creep into MySQL, PostgreSQL, and SQL Server CSV exports — trailing-newline artefacts, batch separators, and all-empty rows — before loading into a BI tool, data warehouse, or staging table. Browser-local; no options to set, just drop the export and download the compacted file.
OpenStrip the fully-empty rows from a contact CSV before a mail merge so Word, Google Docs, or your email tool doesn't generate a blank, address-less merge record for every empty line. Drop the list, the empties are removed automatically in your browser, and your merge count matches your real contact count.
OpenStrip fully-empty rows from a CSV before importing into Looker Studio, Tableau, Power BI, or Metabase, so blank rows aren't counted as records that drag down averages, inflate row counts, and add phantom marks to charts. Browser-local, automatic on drop, no options to set.
OpenSearch and replace any text or pattern across all CSV cells. Supports plain text, case-insensitive, and regex modes. Browser-based, no upload.
Collapse 'UK', 'GB', 'Great Britain', 'United Kingdom', and 'England' to one ISO 3166-1 alpha-2 code with browser-local find and replace. One pair per pass, applied to every data cell — the header row is left untouched.
OpenCollapse 'Mens Shoes', "Men's Shoes", and 'Mens Footwear' to one canonical category with browser-local find and replace. One pair per pass, applied to every data cell — the header row stays intact.
OpenSwap a deprecated SKU prefix for the new one across product, inventory, and order CSVs — no Excel SUBSTITUTE formulas. One anchored regex pass changes only the prefix; the header row is preserved and data stays in your browser.
OpenCollapse 'Active', 'active', 'Y', 'Yes', '1', and 'TRUE' to one canonical status before a database enum or BI import. One anchored pass per value, applied to every data cell, with the header row preserved and everything in your browser.
OpenStrip £, $, and € (and thousands commas) from amount columns so they parse as numbers before a database import or SUM(). One pass per symbol, applied to every data cell, with the header row preserved and everything in your browser.
OpenRemove special characters, emoji, and non-alphanumeric symbols from CSV cells. Fix encoding issues before database or system imports. Browser-based, no upload.
Strip emoji, currency symbols, zero-width spaces, and other non-keep characters from scraped product CSVs before PIM or database import. Whitelist-based, browser-local, no upload.
OpenRemove stray symbols left by UTF-8/Latin-1 mismatches and re-encoded CSV exports. A keep-list stripper that deletes non-letter noise — not a re-encoder. Browser-local, no upload.
OpenRemove control characters, null bytes, and non-keep symbols from a CSV before LOAD DATA INFILE or bulk INSERT into MySQL or PostgreSQL. Whitelist stripper, browser-local, no upload.
OpenRemove emoji, symbols, and invisible Unicode from a multilingual CSV while keeping every script's letters — accents, CJK, Arabic, Cyrillic — via \p{L}. Browser-local, no upload.
OpenRemove soft hyphens, non-breaking spaces, control characters, and symbol noise from PDF-to-CSV extractions before downstream use. Whitelist stripper, browser-local, no upload.
OpenSplit any CSV file into multiple smaller files by row count. Ideal for batch imports, quota chunking, or parallelising workflows. Browser-based, no upload.
Divide a large contact or email-list CSV into equal-row batch files for phased sends, list warm-up, A/B cohorts, or staying under an ESP import ceiling. The splitter cuts strictly by row count, copies the header into every batch, and names files part-1-of-N — Mailchimp, Klaviyo, Brevo, and Kit imports each accept one chunk at a time. Runs entirely in your browser; subscriber emails never leave the page.
OpenDivide a large product or inventory feed into row-count chunks sized for your marketplace or ERP bulk-upload ceiling. Amazon flat files, Shopify product CSVs, and most ERPs cap rows per upload. The splitter cuts by row count, copies the header into every chunk, and names files part-1-of-N — each one a complete, uploadable feed. Browser-local; SKU and cost data never leave the page.
OpenDivide a large transaction or payment export into equal-row batches for phased processing, parallel pipeline runs, or reconciliation audits. The splitter cuts strictly by row count, copies the header into every batch, preserves chronological order, and names files part-1-of-N. Browser-local — transaction data never leaves the page.
OpenDivide a large CRM contact or lead CSV into batch files sized for HubSpot or Salesforce import limits. The splitter cuts by row count, copies the header into every batch, preserves order, and names files part-1-of-N — so a 300k-contact migration becomes a handful of clean, retryable imports. Browser-local; contact PII never leaves the page.
OpenDivide a large order CSV from Shopify or WooCommerce into equal-row fulfilment batches for your 3PL, warehouse, or packing teams. The splitter cuts by row count, copies the header into every chunk, preserves order, and names files part-1-of-N — so each team gets a coherent, complete slice to pick without double-handling. Browser-local; customer addresses never leave the page.
OpenDivide a CSV file into separate files based on the unique values in any column. Each group becomes its own CSV. Browser-based, no upload.
Divide a Shopify, WooCommerce, or OMS orders export into a separate CSV for each Region, Country, or Shipping Zone value — one group file per distinct value, each with the original header. Runs entirely in your browser; order PII never leaves the tab.
OpenDivide a product feed or PIM catalogue CSV into a separate file for each Category value, with the master header repeated on every output, so each category team or channel gets only their products. Browser-local — feed data never uploads.
OpenDivide a lead or prospect CSV by the Assigned Rep column so each rep receives only their own contacts — one file per rep, header included, no other rep's leads visible. Browser-local; contact data never uploads.
OpenDivide a consolidated WMS or ERP inventory CSV into a separate file per Supplier value — one group file each, header repeated — for stock reviews, purchase orders, and return-to-vendor batches. Browser-local; stock and cost data never uploads.
OpenDivide a ledger, expense, or bank-transaction CSV by Account or Cost Centre value — one file per account, header repeated — for per-account reconciliation, audit hand-off, or accountant review. Browser-local; financial data never uploads.
OpenCombine two or more CSV columns into a single column with a custom separator. Merge first + last name, address parts, or any fields. Browser-based, no upload.
Concatenate Address Line 1, Line 2, City, State, and Postcode columns into one formatted address column for mail merge, label print, or shipping-API payloads. Runs in your browser — the merged column is built with your chosen separator and the source columns are folded into it. Note: blank Address Line 2 cells still emit a separator (`123 Main St, , London`), so plan a trailing-separator cleanup pass.
OpenConcatenate First Name and Last Name (and Middle Name if you have it) into one Full Name column in a contact or CRM CSV. Runs in your browser. The tick order is the join order, the source name columns are folded into the merged column, and the result lands at the front of the file — with a single space as the default separator.
OpenConcatenate product attribute columns — Brand, Category, Size, Colour — into a single composite SKU column in your browser. The tick order sets the SKU segment order, the source attribute columns are folded into the SKU, and an empty optional attribute still emits its separator (`SHRT--RED` not `SHRT-RED`), so plan a double-separator cleanup.
OpenConcatenate separate Date and Time columns into one datetime string for database imports, BI tools, and APIs. The tool joins values literally with your separator — `T` for ISO 8601, a space for SQL datetime. It does not parse, reformat, or add a timezone; the segments must already be in the format your destination expects.
OpenCombine a product title and description into one full-text column for search indexing, vector embedding, or systems expecting a single text field. Runs in your browser. The join order is your tick order, the source columns are folded into the combined column, and there's no cell-length limit — but no prefix/label injection either.
OpenIdentify and highlight duplicate rows in any CSV by key column. Download a marked CSV showing which rows are duplicates. Browser-based, no upload.
Flag repeated Order IDs in an orders CSV by appending a YES/NO _is_duplicate column so you can review and resolve them before fulfilling. Single key column, case-insensitive by default, browser-local, no upload.
OpenFlag duplicate invoice numbers in a billing, AR, or accounting export by appending a YES/NO _is_duplicate column. All rows kept for audit. One key column, case-insensitive by default, browser-local.
OpenFlag leads with duplicate email addresses (or phone numbers) in a prospect CSV by appending a YES/NO _is_duplicate column before CRM import. One key column per pass, case-insensitive by default, browser-local.
OpenFlag rows with duplicate SKUs or barcodes in a product catalogue or feed CSV by appending a YES/NO _is_duplicate column before PIM or marketplace import. One key column per pass, case-insensitive by default, browser-local.
OpenFlag employee records with duplicate Employee IDs, NI numbers, or emails in an HR or payroll CSV by appending a YES/NO _is_duplicate column. All records kept for audit. One key column per pass, case-insensitive by default, browser-local.
OpenSort a CSV file by any column in ascending or descending order. Supports alphabetic and numeric sorting. Browser-based, no upload required.
Sort an orders or transactions CSV by date column descending so the most recent orders appear first. Browser-local, free. Works cleanly on ISO YYYY-MM-DD dates; learn how to handle MM/DD/YYYY and Unix timestamps before sorting.
OpenSort a product feed or catalogue CSV by Price column ascending so lowest-priced products appear first. Works for retail, wholesale, and marketplace feeds — including price columns with currency symbols and thousands separators when you use numeric sort.
OpenSort a CRM or marketing leads CSV by Lead Score column descending so the highest-quality leads are prioritised at the top. Browser-local. Use numeric sort for clean integer scores and learn the gotchas for percentage and letter-grade scores.
OpenSort a stock or inventory CSV by quantity column ascending to surface low-stock and out-of-stock items at the top for reorder review. Browser-local. Use numeric sort so 9 doesn't sort above 100.
OpenSort an employee or HR CSV by Department column alphabetically to produce a department-ordered employee list for org chart review or distribution. Browser-local. Case- and accent-insensitive alphabetic sort with natural number ordering.
OpenFilter CSV rows based on conditions in any column — equals, contains, starts with, greater than, and more. Browser-based, no upload.
Keep only the order rows matching one status condition — `Pending`, `unfulfilled`, `partially_refunded` — from a Shopify, WooCommerce, or OMS orders export. One column, one operator (equals / contains / starts with / etc.), case-insensitive by default. Browser-local, no upload. To keep several statuses, exclude a status with `not equals`, or chain the filter twice.
OpenSlice a master product catalogue CSV down to one category for a Google Shopping, Meta, or marketplace feed — pick the category column, `equals` or `contains` the category name, download. Browser-local, no re-export from your PIM. To keep two categories, chain the filter or split one file per value.
OpenKeep only the leads from one source — `Organic Search`, `Paid Social`, `Referral` — in a CRM or marketing export, so you can hand a channel analyst a focused file without exposing every source. Pick the source column, `equals` or `contains`, download. Browser-local, case-insensitive by default.
OpenBuild a reorder shortlist from a full WMS/ERP inventory export by keeping only rows below a stock threshold. Use the numeric `less_than` operator on the quantity column — or `equals` `0` for out-of-stock. Browser-local. Note: numeric operators parse the cell as a float, so units, commas, or blanks are skipped.
OpenKeep only the transactions paid by one method — `Credit Card`, `PayPal`, `Bank Transfer` — from a Stripe, PayPal, or accounting export for reconciliation. Pick the payment-method column, `equals` or `contains`, download. Browser-local, case-insensitive by default, literal matching.
OpenAnonymize a CSV file in your browser — hash, mask, redact, sequential-replace, or drop PII columns. Auto-detects email, phone, and name fields. Free, no upload.
Strip or scramble the PII in a customer export before you hand it to an agency, contractor, or BI vendor. The CSV Anonymizer hashes, masks, redacts, sequentially renumbers, or drops named columns entirely — in your browser, so the original file with real names and emails never leaves your machine. Hashing is deterministic (the same email always maps to the same token), so the vendor can still join and count distinct customers without ever seeing the real value.
OpenPseudonymise the personal data in a CSV export so you can share it with analysts, store it longer, or hand off a redacted record — without exposing names, emails, or national IDs. The CSV Anonymizer masks, redacts, drops, sequentially renumbers, or deterministically hashes named columns in your browser. Hashing is pseudonymisation (still linkable with the salt), redact/drop remove the value entirely — pick the right one for what GDPR / CCPA asks of you.
OpenTurn a real production export into a safe staging / test fixture without writing a faker script. The CSV Anonymizer hashes, masks, redacts, sequentially renumbers, or drops PII columns in your browser, keeping the realistic row shapes and distributions your tests rely on. Deterministic hashing preserves joins and distinct-counts across files, so referential integrity survives — perfect for seeding a staging database with production-shaped data minus the real PII.
OpenReplace an email (or any key) column with a deterministic token so two parties can match records without either side revealing the raw addresses. The CSV Anonymizer's hash strategy produces a stable 16-character hex token — the same email plus the same salt always yields the same token — so a privacy-preserving join works as long as both sides agree on the salt. Runs in your browser; the raw email list is never uploaded.
OpenQuickly blank or scramble the sensitive columns in a CSV before you screenshot it, paste it into a ticket, screen-share it, or attach it to a bug report. The CSV Anonymizer replaces a column's values with [REDACTED], stars (mask), a deterministic token (hash), id-1/id-2 labels (sequential), or removes the column entirely (drop) — all in your browser, so the real data never leaves your machine.
OpenSplit one column's cell value by a delimiter into multiple new columns. Convert `(555) 555-1234, (555) 555-5678` into `phone_1`, `phone_2`. The inverse of CSV Column Merger. Browser-based, no upload.
Turn a single `Full Name` column into `First Name` / `Last Name` (and middle, where present) columns by splitting on the space delimiter — in your browser, no upload. Built for CRM imports, mail-merge, and email-platform uploads that require separate name fields. The splitter trims each part, names the new columns after the source, and pads short rows so every row keeps the same width.
OpenBreak a one-cell mailing address like `123 Main St, Springfield, IL, 62704` into separate `Street`, `City`, `State`, and `ZIP` columns by splitting on the comma delimiter — in your browser, no upload. Built for shipping platforms, CRMs, and mail-merge templates that need address parts in their own columns. Every part is trimmed automatically.
OpenTurn a one-cell `Tags` field like `newsletter, premium, beta` into `Tag_1`, `Tag_2`, `Tag_3` columns by splitting on the comma delimiter — in your browser, no upload. Built for CRM/email-platform exports (Kit, Mailchimp, HubSpot) where tags are packed into a single cell. Each tag is trimmed so the space after each comma is removed.
OpenBreak a combined timestamp like `2026-06-10 14:30:00` into separate `Date` and `Time` columns by splitting on the space delimiter — in your browser, no upload. Built for analytics, reporting, and BI imports that need date and time in their own fields. Each part is trimmed, and shorter rows are padded so the grid stays aligned.
OpenBreak a structured SKU like `TSHIRT-RED-XL-2026` into `Type`, `Color`, `Size`, `Year` columns by splitting on the hyphen delimiter — in your browser, no upload. Built for ecommerce catalog cleanup, marketplace feeds, and inventory imports where attributes are encoded in one SKU string. Each part is trimmed and rows are padded to a uniform width.
Open