kyntralabs.Est. 2019
01MarTech
Marketing operations at scale

The send is the easy part.

Everyone sees the email. Nobody sees the dozen systems that decided who got it, whether they'd consented, which version they saw, and whether it counted for anything. That's the part I own.

Ten years of it, across five verticals. Utilities and logistics first, then FinTech, healthcare, and quick-serve restaurants from the agency side.

02The floor

Scale isn't a brag. It's the constraint.

35M+
messages a day, across email, push, and SMS
12B+
emails a year
5.4B+
push notifications a year
$100M+
in attributed annual revenue
60%
fewer campaign errors after my team rebuilt build standards and QA

At a few thousand sends, a nightly batch job and a careful person are enough. At 35 million a day, neither one saves you. A retry storm becomes an incident. A bad segment becomes a brand problem before anybody's had coffee. Most of what I've built exists because the manual version stopped working somewhere between those two numbers.

03The lifecycle

Everything upstream of the send.

Activation platforms get the credit. They're the last of five stages, and the four in front of them decide whether the last one has anything worth sending.

i.

Ingestion

Clean, real-time intake from every source that has an opinion about the customer: events, transactions, profile updates. Normalized to one vocabulary on the way in, because reconciling six definitions of “active” later becomes its own project.

ii.

Identity resolution

Deterministic matching first, on the keys you can actually defend: email, customer ID, loyalty number. Probabilistic and household stitching second, and labeled as such. A false merge is worse than a missed one. You can fix a missed merge. You cannot un-send the email that went to the wrong person because two profiles got fused.

iii.

Segmentation

Audiences computed off the unified profile and recomputed when behavior changes, not when the nightly job happens to run. Marketers ask for people who did something in the last seven days. That promise is only true if the window actually moves.

iv.

Content

Knowing who gets the message is half the problem. The other half is deciding what they see: asset management, modular blocks, and the selection logic that picks between variants. This is the stage where personalization either becomes real or turns into a merge field with somebody's first name in it.

v.

Activation

Push audiences back out to the channels that act on them, with delivery tracking and writes that are safe to run twice, so a retry doesn't drop someone into a second send. Activation is where most CDP projects quietly leak. It gets the same durability discipline as ingestion or it isn't finished.

04Governance

The unglamorous half.

It's also the half that lands a program in hot water.

A build call I'd make again

Most teams buy a consent tool, wire it to a form, and hope the rest of the stack respects it. I've architected preference and consent infrastructure directly into client MarTech operations instead, so the rules live next to the data rather than inside a vendor's iframe. Consent is one of the few places where the off-the-shelf answer creates more integration work than it removes. Privacy-by-design is also a lot cheaper as an architecture decision than as a remediation project.

Governance that outlives me

GDPR and CAN-SPAM standards, suppression handling, and deliverability practice, written as standards a team can actually follow instead of a document nobody opens. Deliverability is a governance problem wearing a technical costume. Reputation gets wrecked by process, and process is what fixes it. The test of this work is whether it still holds after I hand it off.

05Orchestration

Journeys, lifecycle, and loyalty.

Multi-channel lifecycle work across email, SMS, social, and direct mail. Deep in Marketing Cloud specifically, though the patterns travel between platforms.

  • Redesigned a national loyalty program to an earn-and-burn model spanning a client's entire enterprise messaging footprint. That one was as much executive alignment as architecture.
  • Built an email loyalty program that lifted member retention by more than 25%.
  • Send-time engine that schedules each recipient against their location and their nearest NFL team's kickoff, so the message lands when attention is actually available.
  • Next-best-action content selection driven by behavior and engagement history, instead of whatever was next on the calendar.
06Measurement

Attribution tells you what got credit. A holdout tells you what happened.

Full-factorial suppression engine: hold cohorts out systematically, then measure the revenue that only exists because the program ran. It's slower, and it makes some numbers smaller. It's also the only version that survives a CFO asking a follow-up question.

07The stack

The stack, by stage.

Tools in a category list are a trophy case. Tools mapped to a lifecycle are a competence.

Ingestion
Fivetran · Snowflake · Databricks · Salesforce Data 360
Identity resolution
Salesforce Data 360 · Hightouch
Segmentation
Hightouch · Salesforce Data 360 · Snowflake · Databricks
Content
Directus · Sanity · Bynder · Brandfolder
Activation
Salesforce Marketing Cloud · Braze · Marketo · HubSpot

Several of these appear more than once, which is the point rather than an oversight. The warehouse and CDP layer carries ingestion, identity, and segmentation between them. That's where the work is, and it's why the activation row is the shortest one on the page.

Activation means it sends

Email, SMS, push, or an ad impression. A tool that builds an audience and syncs it somewhere isn't activating anything, it's handing off. Keeping that line honest is the difference between a stack diagram and a vendor slide.

Content is a CMS job before it's a DAM job

Directus and Sanity are where content gets modeled and served. Bynder and Brandfolder are asset management, closer to internal brand governance than to anything a customer ever sees. The two get conflated constantly, and you find out which is which the first time you try to move platforms.

The last row should be the easiest to replace

Doing the first four stages properly is what makes the fifth one swappable. Put identity and segmentation upstream, in the warehouse or the CDP, and the sending platform becomes an endpoint instead of a dependency. If the economics change, or a better channel comes along, you move and the campaigns keep running. The hard part never lived there.

Reverse ETL is what keeps that cheap. Build the audience against the warehouse, sync it wherever it needs to go, and the definition stays yours instead of living inside whatever platform happens to be sending this quarter. Content modeled in a headless CMS travels the same way.

Own the part that's hard to replace. Rent the part that isn't.

AI is a layer, not a stage

Across all five

It runs across the whole lifecycle and earns its place differently at every step. Knowing where it does not belong matters as much as knowing where it does.

Ingestion. Nothing, on purpose. Parsing and normalization are rules work: cheaper, faster, and they don't invent a field that wasn't there.

Identity resolution. Deliberately last. Deterministic matching first, because a probabilistic merge you can't explain to a privacy officer is a liability, not a feature.

Segmentation. Natural-language audience building, so a marketer can ask for a segment without filing a ticket and waiting two days for it.

Content. Draft generation and next-best-action selection, with a person approving before anything reaches a customer.

Activation. Diagnostics and recovery when a send breaks at 2am.

Claude · GPT-4o/5 · Anthropic and OpenAI SDKs · Model Context Protocol

Underneath all of it

TypeScript · Node · Next.js · Postgres · Prisma · AWS · Heroku · Docker · Auth0