Visual ETL migration, made reviewable

Drag-and-drop pipelines, translated into code you can read.

Deflows reads legacy flow structure and turns it into reviewable code, documentation, and lineage. Your team can understand the logic before it moves.

First flow freeLocal browser parsingNo subscription
orders_revenue.tflxparsed locally
Visual structure100%
Orders12 fieldsCustomers8 fieldsJoincustomer_idAggregateregion · sumRevenueoutput
ConvertDocumentLineage
fct_order_revenue.sqlPostgreSQL · live
-- generated from orders_revenue.tflx
with orders as (  select order_id, customer_id,    quantity * unit_price as revenue  from src_orders), joined as (  select o.*, c.region  from orders o  join src_customers c    using (customer_id))select region, sum(revenue) as revenuefrom joinedgroup by region;
Ready for review
Cost preview · first flow free
what works today →

Real inputs. Reviewable outputs.

Supported flow formats in. Reviewable code and documentation out.

INPUTS
Tableau PrepPower QueryAlteryxSSIS
AVAILABLE OUTPUTS
PostgreSQLMySQLBigQueryPySparkdbtdbt (BigQuery)dbt (Snowflake)AWS GlueAzure Data Factory
One parsed structure, three useful views

See the logic from every angle.

Code for migration, plain language for review, and lineage for impact analysis.

01ConvertPostgreSQL · live
generated/3 files

└─ models/

 └─ fct_order_revenue.sql

└─ README.md

select region,
  sum(revenue) as revenue
from joined_orders
group by region;
02Documentlive
FLOW SUMMARY

Orders revenue by region

Combines orders with customer regions, calculates line revenue, then aggregates the result.

Business rules
  • Keep orders with a matching customer
  • Revenue = quantity × unit price
  • Group final output by region
03Lineagesource → output
orderscustomers
joinrevenue_by_region
2 sources4 transformations1 output
How it works

From opaque flow to reviewable output.

three steps, no mystery →
01

Bring the flow

Drop a supported visual ETL file. Deflows identifies its format and parses the structure in your browser.

orders_revenue.tflx412 KB · ready to parse
Browserfile stays local
02

Inspect before spending

Review sources, transformations, outputs, and the exact object cost before generation starts.

Sources2

Transforms15

Outputs1

18 objects · cost shown first
03

Generate and review

Choose an available target, generate the output, then download code or documentation for human review.

fct_order_revenue.sqlSQL

flow_documentation.mdMD

Private by architecture

The sensitive part stays with you.

Clear boundaries beat vague security promises.

Read the trust overview →
01

Parsed in your browser

The original flow file stays on your machine while its structure is read.

02

Metadata, not row data

Visual ETL files describe logic and structure; Deflows does not inspect source-table rows.

03

Visible payload boundary

Only the structural context needed for generation leaves the browser.

Object-based pricing

Pay for the flow, not another seat.

An object is one step in your flow — a source, a transformation, or an output. Unlocking a flow costs objects once; every conversion and document you generate from it afterwards is free. Objects last 12 months.

Your first flow is free, end to end.
Starter
$269
100 objects

For a first migration batch

$2.69 per object in this pack
BEST VALUETeam
$1,199
500 objects

For an active migration program

$2.40 per object in this pack
Scale
$4,199
2,000 objectsBy invoice or PO

For a larger legacy estate

Talk to us to set this up — we can invoice your team.

Not sure how many objects your flows have? Most Tableau Prep flows run 1147 objects, around 25 on average — but yours is the only number that matters. Sign in and upload one: parsing and the cost preview are free, so you see the exact count and price before you spend anything.

Upload a flow and see your count
Migration servicesRunning 50+ flows? We take it end to end.

Priced from the same per-object base, plus the part a tool cannot do for you. Our team runs the same product you would — the difference is who carries the work and the risk.

Talk to us
  • Feasibility read firstWe convert one or two of your real flows before anything is signed, and tell you what moves cleanly and what does not.
  • Per-flow QAEvery converted object is reviewed, and the edge cases the parser flags are resolved by hand rather than left to you.
  • Output validationThe generated code is executed against generated test data and diffed against your current output, row by row.
  • Deployment and integrationThe result lands in your warehouse and your orchestrator, wired up — not in a zip file for someone else to finish.
  • A written parity guaranteeWe stand behind the match, and fixing whatever misses it is our work, not a change request.

Prices exclude VAT and sales tax where applicable; the exact amount is calculated at checkout from your billing country. Paid flows bill a minimum base of 8 objects. Weighing this against doing the work in-house? Put your own numbers in.

Resources

The detail behind the migration.

Current product guidance and practical migration notes, now in the same visual system.

your logic deserves a readable future

Ready to see what is inside your flow?

Parse the first one locally, inspect its structure, and decide what to generate.