📚Academy
likeone
online

Data Flow Design

Data is the lifeblood of every workflow. Learn to move it cleanly.

What You'll Learn

  • How data moves between workflow steps
  • Transforming data formats without losing information
  • The pass-through pattern and the accumulator pattern
  • Avoiding the #1 data flow mistake

Data In, Data Out, Data Between

Your trigger fires and brings data with it — a form submission, a new row in a spreadsheet, a webhook payload. That data needs to flow through every step of your workflow, sometimes unchanged, sometimes transformed. Getting this flow right is the difference between a workflow that works and one that breaks at 2am.

Think of data flow like plumbing. Each step is a valve that receives water, does something with it, and sends it on. If the pipes don't match, you get leaks.

Two Essential Data Flow Patterns

Pass-Through: Data enters Step A and flows unchanged to Step B. Example: a customer email address from a signup form gets passed directly to your email platform. No transformation needed — just routing.

Accumulator: Each step adds new data to the payload. Step 1 gets the customer name. Step 2 looks up their order history. Step 3 combines both into a personalized message. The data grows richer at each stage.

Most real workflows use both patterns together. Some data passes through untouched while new data accumulates alongside it.

When Data Needs to Change Shape

Your CRM stores dates as "March 27, 2026." Your database expects "2026-03-27." Your email template wants "Thursday, March 27th." Same information, three formats. Data transformation handles these conversions so each tool gets data in the shape it expects.

AI adds a powerful layer here. Instead of writing rigid transformation rules, you can use AI to interpret messy, inconsistent data and normalize it. A customer writes "next Tuesday" in a form — AI converts that to an actual date. That's a transformation no simple rule could handle.

The #1 Data Flow Killer

Losing data between steps. It happens when you don't explicitly pass a field from one step to the next, and by step 5 you need the customer's email from step 1 but it's gone. The fix is simple: at each step, be explicit about what data you're receiving, what you're adding, and what you're sending forward. Never assume data will "just be there."

A good practice: name your data clearly at every stage. Not "field1" — "customer_email." Not "value" — "total_order_amount." Future you will be grateful.

The Branching Data Flow

Not all data flows in a straight line. Sometimes the output of one step determines which path the data takes next. A customer's plan type might route their data through completely different enrichment steps — enterprise customers get a Clearbit lookup, while free-tier users skip straight to the welcome email.

Branching flow example:

Step 1: Receive signup data → {email, name, plan}

Step 2: Check plan type (branch point)

Branch A (Enterprise): Clearbit enrichment → sales team assignment → personalized onboarding deck → white-glove welcome

Branch B (Free): Basic welcome email → self-serve tutorial link → add to product-led growth sequence

Step 5 (convergence): Both branches → log to analytics → update CRM

The key design principle for branching flows: ensure every branch produces a compatible output format at the convergence point. If Branch A outputs {customer_id, segment, onboarding_type}, Branch B should output the same fields — even if some values are defaults.

🔒

This lesson is for Pro members

Unlock all 520+ lessons across 52 courses with Academy Pro.

Already a member? Sign in to access your lessons.

Academy
Built with soul — likeone.ai