Clean your data once.
Every module uses the same result.
No-code data transformation your whole team can build. Point and click from a messy table to a clean one, see the quality score move after every step, and send the result to the database you choose.
bad step is all it takes to change every number downstream
Nobody sets out to publish a wrong number. It happens because a join quietly multiplied the rows, or a cleanup step dropped records nobody counted, and the dashboard looked fine either way.
By the time the CFO's number and the CMO's number disagree, the pipeline that caused it ran weeks ago. Transform scores your data after every single step, so the number that moved is visible while you are building, not after someone presents it.
Your First Pipeline
Point, click, and watch the quality score
move after every step.
Nothing is committed while you build. Every operation runs against an encrypted sample that is purged after 30 minutes, so you can try a step, see what it does to your data, and undo it without touching the source or spending anything.
Pick a table
Choose any connected source. A 16,600-row sample loads for you to work on.
Add an operation
Filter, join, group, clean, or reshape. Twenty-five to choose from.
See the quality delta
Every step shows how much it helped or hurt, column by column.
Choose a destination
Any connected database. Column types are converted for you.
Set it and forget it
Run once, daily, or on your own schedule. It reruns as new data lands.
Continuous Quality Auditing
Know which step broke your data
while you are still building it.
Where most tools check your data once at the start and once at the end, Transform scores it after every operation, so a join that introduced nulls is visible immediately rather than three weeks later in a board deck.
Run-Level DQ Scoring
Live now
Column-Level DQ Delta
Live now
Every step shows what it did to each column as you build, so you catch the one that hurt your data before it ever runs for real.
Twenty-Five Operations, Or Your Own Code
No-code until you need code.
Then both, in the same pipeline.
Filtering, joining, grouping, and cleaning are all point-and-click, and when something genuinely needs custom logic you can drop a Python step in at any position and carry on clicking afterwards.
Native Code Editor
For The Last 5% Of CasesRunning totals, scoring against a group average, reading a value out of a JSON column: the handful of things no point-and-click operation can express. Write those in Python and drop the step anywhere in the sequence.
- Polars, NumPy, SciPy, math and re, already loaded
- Test it against your sample before you save
- The next step picks up your new columns automatically
Structural Engineering
Relational & Math
Cleaning & Formatting
Temporal Operations
Ordering
It Knows What Your Columns Hold
Dates behave like dates and numbers like numbers, so the builder only offers you operations that make sense and stops you averaging a column of names.
Readable By Everyone
Your finance lead can read
the pipeline you built.
Steps stack top to bottom in the order they run, so anyone can follow what happened to the data without tracing arrows across a canvas.
Transform
Readable by everyone
Legacy ETL Tools
Owner-only knowledge
Where The Time Goes
A cleanup that used to take a week takes about five minutes.
That is our own measured time to connect a table, ask for suggestions, read them, apply them, and save a working pipeline, so long as you are doing standard cleaning and adding straightforward new columns.
Working out what needs cleaning
Profile the table yourself, column by column, before you can start
Quality scores are already there from the day you connected the source
Deciding which steps to apply
Judgement call, or a meeting with whoever knows the data best
Ask for suggestions and get an ordered set with the reason for each
Building the pipeline
Write SQL or Python, then wait for someone to review it
Point and click, with the result on screen after every step
Moving between two databases
Map every column type by hand and fix what breaks on the first run
Types are converted for you, visible in the preview before you save
Knowing a step made things worse
Find out weeks later when a number looks wrong in a report
The score moves the moment you apply it
Keeping it running
Someone checks whether last night's job worked
It emails you when a run fails, with the failing step already open
Raw table to saved pipeline
Our own measured time, following the suggestions
Column types mapped by hand
The schema mapper matches them for you
Cost to build and preview
Compute is metered only when a pipeline runs
Rows stored by Edilitics
The finished table lands in your own database
A Starting Point, Not An Autopilot
Not sure what your data needs? Ask.
Describe what you are trying to build and get back an ordered set of suggested steps with the reason behind each one, none of which touch your pipeline until you approve them.
4-Step Suggestion Workflow
From an empty pipeline to a reviewed, ready-to-run one
Pick a Goal
Clean up what is there, add new columns, or both. Add a note about what you are trying to build.
AI Reads Your Pipeline
It sees your column names, their quality scores, and the steps you already added. Never your actual rows.
Review Each Suggestion
Steps arrive in the order they should run, each one telling you why it was suggested.
Apply or Discard
Nothing writes to your pipeline until you click Apply. Start over any time, no cost, no commitment.
Data Quality
Blanks, dates stored as text, duplicate rows, inconsistent formatting: it reads what is actually in your columns and proposes the cleanup steps to match.
New Columns
Days between two dates, a margin worked out from revenue and cost, customers grouped into bands: the columns you would have calculated by hand.
Private Mode
Your column names are replaced with placeholders before the request leaves your workspace. The AI still knows what each column holds and how clean it is, so the steps it suggests are still the right ones.
Balanced Mode
The AI sees your real table and column names, so the operations it suggests refer to your data the way your team already talks about it.
Full Context Mode
Everything Balanced sends, plus the handful of values that come up most often in each column, so cleanup steps match the labels your data actually uses.
Your Database, Not Ours
The finished table lands
in the database you choose.
Your data is pulled into isolated memory for the length of the run, transformed, written to your destination, and then the machine is destroyed, leaving us with the recipe and never the ingredients.
Your Source DB
Postgres · Snowflake · BigQuery
A Machine That Deletes Itself
Starts up → does the work → gone
Your Destination DB
You own every byte written
We keep two things, and neither is your data
The steps you built and the record of when they ran. Not a single row of what went through them. If you leave tomorrow, your clean tables are already sitting in your own database.
Move Between Databases
Read from Postgres.
Write to BigQuery. No mapping.
Source and destination can be different databases entirely, and column types are converted to whatever the destination supports without you matching a single one by hand.
Column Types Sort Themselves Out
Moving a table from one kind of database to another normally means matching up every column type by hand. Here it just happens, and you see the result in the preview before you save.
Single-Fire
Runs once when you save it, and again whenever you press the button. Good for a one-off cleanup or a test.
Daily Interval
Pick a time and it runs every day, in your timezone. Most people never need anything more than this.
Custom Cron
Every weekday at 6am, or the first of the month. Build it and we show you what it means in plain English.
Pipeline Lifecycle
Run it now, pause it for a while, or go back and change the steps. The only time editing is locked is while a run is actually in progress.
Every Run On Record
How often it worked, how long it took, and what it cost you in run time. When something fails, open that run and read exactly what went wrong.
When Something Goes Wrong
Find the run that broke,
and the step inside it.
Every run is recorded with what it pulled, what it wrote, how long it took, and which step failed, so a broken pipeline is a question with an answer rather than an investigation.
Run It Now
Need today's numbers before tomorrow's scheduled run? Trigger it yourself, any time.
Pause Without Losing It
Stop a pipeline running for a while. Your steps and schedule are waiting when you turn it back on.
Change The Steps
Go back in and edit any pipeline, except while it is mid-run, when it locks to protect the result.
Undo Everything
Changed your mind halfway through an edit? Throw the draft away and go back to what was working.
Copy It And Tweak
Built something that works? Duplicate it for the next table instead of starting over.
Look Without Touching
Open any pipeline to see exactly what it does, with no risk of changing it by accident.
Success Rate
97.4%
Avg Runtime
3.7s
Total Runs
1,847
Compute Used
6,834s
What You Pay For
You are billed for seconds spent running. Nothing else.
No charge per row, no charge per operation, and no charge at all while you build, so the cost of a pipeline is simply how long it takes to run.
Nothing To Undo Later
Colleagues you share with can run a pipeline and read its history, but only you can change or delete it. Take their access away whenever you want.
You Hear About It First
If an overnight run fails you get an email, not a surprise in the morning meeting. Everything else shows up in the app, in your own timezone.
Billed By The Second
You pay for the seconds a pipeline actually spends running. We check you have enough before starting a run, so a job never stops halfway and leaves you with a mess.
You Cannot Break A Running Job
While a pipeline is writing to a table, editing it is locked. Two people cannot accidentally change the same thing at the same time and corrupt the result.
Building Costs Nothing
Add steps, preview them, throw them away, start again. You are only charged once a finished pipeline actually runs, so experimenting is free.
It Stops You Making A Mess
The builder knows what each column holds, so it will not let you average a list of names or run a text search on a number. Mistakes get caught as you make them.
Sharing Without Surprises
Let your team run it
without letting them change it.
Share a pipeline and your colleagues can run it, pause it, and read every log, but the steps you built stay exactly as you left them.
If You Built It
You decide what the pipeline does, when it runs, and who else gets to see it. Nobody can change your work but you.
If Someone Shared It With You
Read every step, check when it last ran, and run it yourself when you need fresh numbers. You just cannot change or delete it.
When Someone Leaves
Take their access away and it is gone immediately, along with any alerts they were receiving about your pipelines.
While You Are Building
The sample you work on
deletes itself.
Preview data is encrypted while you build and purged after 30 minutes of inactivity, so an abandoned pipeline does not leave your data sitting anywhere.
You Work On A Copy
Building a pipeline never touches your real table. You get 16,600 rows to experiment on, so a step that goes wrong costs you nothing but the time to undo it.
- Encrypted the whole time you have it open
- Gone the moment you save or walk away
Try It Before It Is Real
Every step shows you the result on that sample first. You decide whether it did what you wanted before it ever runs against the full table.
- Nothing is written until you save
- Previewing costs you nothing
Close the tab and it is gone
Save your pipeline or simply walk away, and the sample you were working on is deleted. An abandoned draft does not leave your data sitting on a server somewhere.
Everything you need to know before you decide.
No sales call needed. If you have a question we haven't answered here, reach out directly.