©Code byMilanParmar

Campaign platform: 100+ B2B campaigns, 200K+ recipients, and 100K+ gifts and postcards sent

B2B marketing teams run campaigns that mix emails, landing pages, and physical touches like gifts and postcards, usually across several tools. I built a platform in 14 weeks that runs the whole thing: a setup wizard that adapts to the campaign type, audience selection, landing pages, multi-step outreach that reacts to what each recipient does, gift and postcard fulfillment, and Stripe payment before launch. It has run 100+ campaigns, reached 200K+ recipients, and sent 100K+ gifts and postcards.

Category
SaaS
Industry
Marketing technology
Type
Campaign orchestration platform
Year
2025

At a glance

Client
Marketing technology company (name kept private)
The problem
Campaigns with emails, landing pages, gifts, and postcards ran across separate tools, with nobody tracking where each recipient was or what it would all cost.
What I built
An adaptive campaign wizard, audience selection from existing lists, landing pages with recipient details, behaviour-based follow-ups, address collection, gift and postcard fulfillment, and Stripe checkout before launch.
The result
100+ campaigns run, 200K+ recipients reached, and 100K+ gifts and postcards sent, each recipient on their own journey and every campaign paid for before launch.
Timeline
14 weeks
Budget
$30,000

The problem: B2B campaigns spread across too many tools

A modern B2B campaign might send an email, point to a personal landing page, ask for a shipping address, send a gift or postcard, and follow up depending on what the person did. Run across separate tools, nobody knows where each recipient is, and the real cost only shows up after the invoices arrive.

The company wanted one product that takes a campaign from idea to launch and runs every step after that.

A campaign wizard that adapts to the type of campaign

An event invite and an account-based marketing play need different steps. The wizard starts with the campaign type and goal, then only asks for what that campaign needs: audience, landing page, outreach, and physical touches.

  1. 01

    Pick the campaign type

    Event, ABM play, product launch, referral, customer success, and more.

  2. 02

    Set the goal

    The wizard adapts its next steps to the type and goal.

  3. 03

    Choose the audience

    From contact lists the team already has.

  4. 04

    Set up the experience

    Landing page, emails, and optional gift or postcard.

  5. 05

    Review and pay

    Gifts, shipping, and postcards priced up front, paid via Stripe.

  6. 06

    Launch

    Every recipient starts their own journey.

Behaviour-based follow-ups for every recipient

A campaign isn't one send. Each recipient has their own state. Someone who opens and clicks moves forward; someone who doesn't gets a follow-up; someone who submits an address moves into fulfillment. Opens, clicks, landing page visits, form submissions, and address submissions all decide what happens next.

All of this runs in background queues, so every recipient can move through a campaign on their own timeline without slowing the app.

Gifts and postcards connected to digital outreach

When a recipient submits their address on a landing page, it goes straight into the fulfillment workflow for their gift or postcard. The physical side of the campaign follows the digital side automatically, and it all shows up in the same analytics.

Knowing the full campaign cost before launch

Gifts, shipping, and postcards all cost money. The platform adds them into one campaign price, and the campaign can't launch until Stripe payment is complete. Teams know exactly what they're spending before a single email goes out.

Results

  • 100+

    campaigns run

  • 200K+

    recipients reached

  • 100K+

    gifts and postcards sent

  • 14 weeks

    to build and launch

Key decisions

  1. 01

    A wizard that adapts to the campaign type

    Different goals need different steps. Adapting the flow keeps each campaign simple to set up.

    Trade-off: More branching logic to build and test.

  2. 02

    State tracked per recipient

    Every person reacts differently. Tracking each one's state is what makes behaviour-based follow-ups possible.

    Trade-off: Far more state to store and process than one-off sends.

  3. 03

    No launch without payment

    Gifts and postage cost real money. Tying launch to a confirmed payment means nothing ships unpaid.

What the client said

“We used to juggle three tools for gifts, emails, and landing pages. Now we set up the whole campaign in one place, see the cost, pay, and launch.”
Product lead

FAQs

What is campaign orchestration?

Running every step of a multi-channel campaign from one place: who gets what, when, and what happens next based on their behaviour. It replaces manually coordinating emails, landing pages, and follow-ups across separate tools.

How do you combine email campaigns with gifts or direct mail?

Link them through the recipient. Emails lead to a landing page, the landing page collects an address, and that address triggers fulfillment of the gift or postcard. Tracking each recipient's state keeps the digital and physical steps in sync.

What are behaviour-based follow-ups?

Follow-ups that depend on what each person did, instead of one fixed schedule. Someone who clicked gets a different next step than someone who didn't open the first email. It needs per-recipient state and background processing to work at scale.