visibility Static layout preview of Automated Workflows (Pipeline Runner), shown with a file imported, a four-step pipeline configured, and a completed run (results + per-step summary). All pages →

Automated Workflows

Runs 100% locally

Run several tools in a row — save the steps once, reuse them anytime.

upload_file Drag and drop file here Up to 1.5 GB · CSV, TSV, XLSX, XLS · encoding & delimiter auto-detected
customers_export.csv 2.1 MB
Preview: customers_export.csv

18,442 rows, 6 columns

nameemailcityphonesignup_date
0 Jane Doe jane@acme.ioAustin512-555-01902024-01-04
1jane doeJANE@ACME.IOaustin(512) 555-019001/04/2024
2Bob Smithbob@globex.comDenver720.555.77812024-02-11
3R. Smithbob@globex.com720-555-7781Feb 11 2024

Options
Use the recommended default (Clean Text → Standardize → Fix Missing → Find Duplicates) · modified Build interactively Import a saved pipeline JSON
edit You started from the recommended default and edited a step, so the mode switched to Build interactively. The steps below are now yours to change — pick recommended default again to discard your edits and restore the suggested order.

Add, remove, reorder (drag the row index), enable, or configure each step. Open a step's Configure panel to set its options in plain language. Tool order is recommended, not enforced — violations surface as warnings below the table.

Step Enabled Configure
≡ 0
Clean Text
Trim spaces, collapse repeats, leave case as-is
check tune Configure expand_more
Configure: Clean Text
check Trim leading & trailing whitespace
check Collapse repeated spaces to one
Normalize smart quotes & dashes to plain ASCII
Leave as-is
≡ 1
Standardize Formats
Format phone as phone, signup_date as a date
check tune Configure chevron_right
Configure: Standardize Formats

Choose a target format for each column. Columns left as “Leave as-is” are untouched.

ColumnFormat as
nameLeave as-is
emailLeave as-is
phonePhone number
signup_dateDate
≡ 2
Fix Missing Values
Flag blank cells (treat “N/A” and “—” as blank)
check tune Configure chevron_right
Configure: Fix Missing Values
Flag them (mark blanks, change nothing) Fill them in (numbers → median, text → most common) Drop rows that have any blank
N/A, —
Matched case-insensitively after stripping whitespace.
≡ 3
Find Duplicates
Match on email & phone; keep the most complete row, merge in missing fields
check tune Configure chevron_right
Add step
Configure: Find Duplicates
Keep the most complete row
Other options: keep the first seen, keep the last seen.
check Merge matched rows (fill each survivor's blanks from its duplicates)
email phone
Advanced — import / export pipeline as JSON

For sharing or version control. Editing is done in the step panels above — this is just the saved form of the same settings.

{ "version": 1, "steps": [ {"tool": "text_clean", "enabled": true, "options": {"trim": true, "collapse_whitespace": true}}, {"tool": "format_standardize", "enabled": true, "options": {"column_types": {"phone": "phone", "signup_date": "date"}}}, {"tool": "missing", "enabled": true, "options": {"strategy": "flag", "sentinels": ["N/A", "—"]}}, {"tool": "dedup", "enabled": true, "options": {"survivor_rule": "most_complete", "merge": true, "keys": ["email", "phone"]}} ] }
Recommended tool order — why each step belongs where it does

text_clean before format_standardize — format parsers (phone / currency / date) fail on smart-quote-contaminated or NBSP-padded input — clean text first

text_clean before missing — sentinel detection misses cells padded with NBSP / zero-width characters — clean text first

text_clean before dedup — fuzzy matching treats NBSP-padded values as different — clean text first

format_standardize before missing — numeric imputation needs numeric dtypes; canonical phones / currencies improve sentinel detection

format_standardize before dedup — canonical phones / lowercase emails enable cross-format duplicate matching

missing before dedup — deduping rows with mixed NaN sentinels produces brittle merges — resolve missing values first



Results

Initial rows
18,442
Final rows
18,130
Steps run
4
Elapsed
1.84 s

Per-step summary

stepstatuselapsedsummary
text_clean ok 214 ms 1,204 cells changed in name & city
format_standardize warning ok · 141 skipped 388 ms 18,301 phones and 17,996 dates standardized
info 141 phone values didn't match any known pattern and were left unchanged. The step still completed — review them in the output preview if needed.
missing ok 121 ms 642 blank cells flagged (sentinel “—”)
dedup ok 911 ms 312 duplicates removed across 147 groups (18,442 → 18,130 rows)

Output preview (first 10 rows)

nameemailcityphonesignup_date
0Jane Doejane@acme.ioAustin+1 512-555-01902024-01-04
1Bob Smithbob@globex.comDenver+1 720-555-77812024-02-11
2Carla Reyescarla@initech.coPhoenix+1 480-555-33202024-03-02
3Dan Okafordan@umbrella.net⚑ missing+1 206-555-77452024-03-18
4Emily Tranemily@hooli.comSeattle+1 206-555-11822024-04-05