Skip to content
All tools Pricing Blog

Chats & voice messages

Documents

Audio & video

Log in

Language

CSV cleaner

Remove duplicates from a CSV and clean it: names, emails and stray spaces

Upload a CSV or Excel file and get it back without duplicate rows, without empty rows, with stray spaces and invisible characters removed, emails in lowercase and names written one way. Duplicates can be whole rows or rows that share an email or a company, and near matches such as "ACME, Inc." and "acme inc" count as the same. A list shows every removed row and which row it repeated. Files of up to 1,000 rows are free in full; bigger files are $5, paid once.

Clean a file

Remove duplicates

Column names or letters, separated by commas. Rows where these columns are empty are kept.

More options

Empty: columns named like Name, Company, Customer or Vendor. ALL CAPS and all-lowercase names are capitalized; company suffixes are written one way.

No sign-up. Up to 1,000 rows free in full. Longer: the counts and first rows free, the whole file $5, one payment.

By continuing you agree to our Terms of Service and Privacy Policy.

  • Up to 1,000 rows free in full, no account needed
  • Whole file $5, one payment: up to 200,000 rows
  • Duplicates by whole row or by columns such as Email
  • Near matches: case, spacing, punctuation and Inc/LLC/Ltd ignored
  • Names and companies written one way; emails lowercased
  • A list of every removed row and the row it duplicated
Open the demo

See a sample PDF Sample output

What you get back

A cleaned copy of your file, named for example contacts.clean.csv, and a list of removed rows. Before you pay, the screen shows how many duplicates, empty rows and cells were fixed, and the first cleaned rows.

  • CSV in, CSV out, with the same delimiter and encoding and the same header. Excel in, Excel out, as a clean sheet of values (formatting and formulas are not carried over; formula results are).
  • The first copy of each duplicate is kept, in its original position; later copies are removed.
  • Every cell trimmed, double spaces collapsed, and non-breaking spaces, zero-width characters and control characters removed. Columns named like Email are lowercased.
  • Name columns (Name, Company, Customer, Contact, Vendor or the ones you list): words written in ALL CAPS or all lowercase are capitalized, so "maria GARCIA" becomes "Maria Garcia", and company suffixes are written one way, such as Inc., LLC, Ltd and GmbH.
  • A removed rows CSV with each removed row, its original values and the number of the row it duplicated.

Cleaning a file with a chatbot, and with this tool

A chatbot with code tools can deduplicate a small file, and spreadsheet software removes exact duplicates. The hard parts are near matches, keeping a record of what was removed, and files too big to paste.

Your situation A chatbot This tool
A short list with obvious repeats Usually handles it Handles it, free up to 1,000 rows
100,000 rows Cannot read them in a conversation; needs code you have to check Cleans the whole file, up to 200,000 rows for $5
"ACME, Inc." and "acme inc" Treated as different unless asked carefully Treated as the same with near matching on
Same person, email in capitals Often missed Emails are compared in lowercase
What was removed? Rarely tells you row by row A CSV of every removed row and the row it repeated
Running it again next month A new conversation, maybe different rules The same rules every time

How to remove duplicates from a CSV

  1. 1

    Upload and choose how to match

    Drop a .csv, .tsv or .xlsx file. Choose whole rows or the columns that define a duplicate, such as Email, and whether near matches count.

  2. 2

    Check the counts and first rows

    See how many duplicates and empty rows were found and how the first rows look after cleaning. Small files are free in full.

  3. 3

    Download

    Download the cleaned file and the list of removed rows; for files over 1,000 rows, unlock them first for $5.

Why near duplicates are hard

Exact duplicate removal compares rows character by character, so "ACME, Inc." and "acme inc", or "[email protected]" and "[email protected]", survive as two records. In a contact list that means two emails to the same person; in a supplier list, two accounts for one company.

This tool builds a comparison key for each row from the columns you choose. With near matching on, the key ignores capital letters, spacing and punctuation, and in company columns it also ignores legal suffixes such as Inc, LLC, Ltd, GmbH and S.A. Rows with the same key are duplicates; the first stays and the others are listed. Rows whose key columns are empty are never treated as duplicates of each other.

What people use it for

  • Cleaning a contact or lead list before importing it into a CRM or email tool
  • Merging exports from two systems and removing the overlap
  • Supplier and customer lists with the same company written several ways
  • Survey or sign-up exports with repeated submissions
  • Removing empty rows and stray spaces before a VLOOKUP or a database import
  • Fixing names typed in capitals in a registration form

Optional: fix name variants with AI

Rules cannot know that "Intl Business Machines" and "IBM" are the same company. Tick the AI option and the distinct names in each name column are sent to an AI model, which writes one spelling per company or person and fixes obvious typos, leaving names alone when it is not sure. This runs after duplicates are found, so it changes how names are written in the result, not which rows are removed. Without the option, nothing is sent to an AI model.

Limits worth knowing

One file per job, up to 100 MB; in Excel the first sheet with a header row is used. One payment covers up to 200,000 rows and Unlimited up to 500,000; rows beyond the limit are copied to the end of the file unchanged. Names written in mixed case, such as "DeShawn" or "McKenzie", are left as they are, and short all-capital company words such as IBM are treated as abbreviations.

By language and situation

What it costs

Small files

Free

Files of up to 1,000 rows are cleaned free in full, downloads included. Bigger files: the counts and first rows on screen, no account.

Whole file

$5

One payment for one file: up to 200,000 rows, with the removed rows list. No subscription, never expires.

Unlimited

$19 / week

Every tool on the site, with files of up to 500,000 rows.

Questions and answers

Can ChatGPT remove duplicates from a CSV?

For a small file, yes, usually by writing code. A large file does not fit in the conversation, near matches like "ACME, Inc." and "acme inc" are easy to miss, and you rarely get a list of what was removed. This tool applies the same rules to every row and lists every removed row.

Which copy is kept?

The first one, in its original position. Later copies are removed and listed with the number of the row they duplicated.

Can I remove duplicates by email only?

Yes. Choose "By columns" and type Email, or any columns that identify a record, such as First name, Last name and Company. Rows where those columns are empty are kept.

What counts as a near match?

With near matching on, differences in capital letters, spacing and punctuation are ignored, and in company columns so are legal suffixes such as Inc., LLC, Ltd and GmbH.

Will it change my data?

Only in the ways listed: spaces and invisible characters removed, emails lowercased, all-caps or all-lowercase names capitalized, company suffixes written one way, and duplicates and empty rows removed. Other values stay as they are.

How big a file can it clean?

Up to 200,000 rows for one payment of $5, and up to 500,000 rows with Unlimited, in files of up to 100 MB.

Is it free?

Yes for files of up to 1,000 rows, downloads included. Bigger files show the counts and first rows free; the cleaned file is $5, paid once.

Are my files private?

Only you can open your job. Cleaning runs on our server and nothing is sent to an AI model unless you tick the AI option; then only the distinct names in the name columns are sent. Jobs uploaded without an account are deleted after 7 days, and you can delete any job yourself at any time.

Updated October 25, 2026 · APPFACT STUDIO LTD

More jobs we can do

WhatsApp chat to PDF, voice messages included Telegram chat to PDF, voice messages included Messenger chat to PDF, voice messages included Instagram DMs to PDF, voice messages included Email export (MBOX, EML) to one PDF Court bundle: merge, index and number evidence Handwriting & cursive to text Image & scanned PDF to text PDF & scanned tables to Excel Bank statement to Excel or CSV Translate a whole PDF Translate a whole subtitle file Translate ASS subtitles, styles kept Convert subtitles between formats Fix subtitles that are out of sync Fix broken Persian and Arabic subtitles Dual language subtitles, two languages at once Translate a CSV or Excel file, every row Translate app localization files Translate a whole Word document Translate a PowerPoint, slide by slide Translate a whole EPUB book Translate a Markdown docs folder Finglish, Roman Urdu, Hinglish, Arabizi: change the script Scanned PDF to editable Word, any script Summarize a whole book, chapter by chapter Run one AI instruction on every row Analyze thousands of customer reviews Code open-ended survey answers Translate a whole product catalog Translate a game or visual novel Translate a large JSON, XML or YAML file Long audio & video to text Video file to translated subtitles Many recordings at once Lecture recording to study notes Meeting recording to minutes Podcast transcript and show notes Sermon to text, with translation Interview transcription with speakers Extract burned-in subtitles to SRT Sync your transcript to the audio Lyrics to synced LRC Text to audiobook MP3 All your voice memos in one document YouTube video to text, any length YouTube subtitles in any language Outlook PST, MSG or OLM to one PDF Medical records to a dated chronology Text messages to PDF, for court or a lawyer iMessage to PDF, the whole thread Slack export to a readable PDF Discord chat to PDF, as evidence Chat logs for a spouse visa, month by month

We use analytics cookies to see which pages help people. Is that OK?