Email list cleanup

A contact list with First Name, Last Name and Email columns (a CRM or newsletter export), before you import or mail it.

Processed locally in your browser. File contents are not uploaded. No account needed.

Before and after

Made-up rows from the sample file, run through the same code Rote Workspace runs, when this page was built. Removed rows are struck through; changed cells are highlighted — point at one for its old value.

Data Workspaceemail-list-cleanup.csv6 rows · 4 columns · UTF-8 Processed locally

Original

Before: the sample file
RowFirst NameLast NameEmailCompany
2mayapatelMaya.Patel@Example.comBrightline Studio
3 (removed)MayaPatelmaya.patel@example.com (has spaces at its edges)Brightline Studio Ltd
4 (removed)
5 (removed)JONASWEBERWeber Logistics
6LucíaGómezlucia.gomez@example.comGómez & Hijos
7tombeckerTOM.BECKER@EXAMPLE.COM (has spaces at its edges)Becker Bikes

Result

After: Email list cleanup
RowFirst NameLast NameEmailCompany
2Maya (changed)Patel (changed)maya.patel@example.com (changed)Brightline Studio
6LucíaGómezlucia.gomez@example.comGómez & Hijos
7Tom (changed)Becker (changed)tom.becker@example.com (changed)Becker Bikes

3 rows × 4 columns after the fixes · was 6 × 4 · 10 cells changed

· marks a space at the start or end of a value. The dots are not in the data; they show spaces you would otherwise not see.

What it does

  1. Remove empty rowsOn the sample: 1 row removed
  2. Trim spaces in every columnOn the sample: 2 cells changed
  3. lower-case "Email"On the sample: 2 cells changed
  4. Title-case "First Name", "Last Name"On the sample: 6 cells changed
  5. Keep only the rows where "Email" is not blank; the other rows are removedOn the sample: 1 row removed
  6. Remove duplicates: rows with the same "Email" (ignoring case, ignoring extra spaces, blank keys never match), keeping the first of each groupOn the sample: 1 row removed

Your file needs these columns, spelled exactly: First Name, Last Name, Email. If one is missing or renamed, the workflow tells you which step it breaks and does not run.

Two rows are one contact when their email matches, ignoring capitals and spaces. The desktop template Remove duplicate contacts also matches rows with no email by name and phone; that needs a formula, which the browser does not have, so here rows with no email are removed instead.

How to use it

  1. Download the workflow

    A small .json file with the steps above — no data. Want to try it first? Use the sample file (made-up rows).

  2. Open your export

    In the Data Workspace, choose your file. It is processed in your browser, not uploaded.

  3. Import, review, run

    Workflow → Import, choose the file — or skip the download: under Workflow → Templates, press Check & open. Each step is checked against your columns; press Run on this file, then Download.