The product
One campaign. Every touchpoint connected.
This platform takes a campaign from strategy to execution. Users choose the type of campaign, define its goal, select an audience, configure the experience, choose physical touches, build outreach, pay, and launch — all from one workflow.
Campaign builder
Start with the play. The workflow adapts.
Campaigns can start as events, ABM plays, product launches, expansion campaigns, referrals, customer-success campaigns, and more. The selected campaign type determines the goals and configuration experience that follows.
Audience
Start with the people you already know.
Campaigns use existing contact lists so teams can move directly from audience selection into campaign configuration without rebuilding their contact data.
Campaign experience
Give every recipient the right context.
Each campaign can include a predefined landing-page experience with configurable content and recipient variables. The experience is built directly into the product rather than requiring users to create arbitrary HTML.
Physical touchpoints
Digital outreach can end at someone's doorstep.
Campaigns can include gifts and postcards alongside digital outreach. When a recipient submits their address, that information becomes part of the fulfillment workflow.
Automation
The campaign doesn't stop after the first send.
Follow-ups can depend on what the recipient does. Opens, clicks, landing-page activity, form submissions, address collection, and other events can influence what happens next.
Orchestration
The hard part was connecting everything.
Email, landing pages, recipient state, gifts, postcards, shipping, payment, and follow-up logic all operate on different timelines. The platform brings them together into one stateful campaign workflow.
Launch
Know the cost before the campaign goes live.
Gift costs, shipping, postcards, and other campaign costs are combined into a final campaign price. Stripe payment is completed before the campaign is allowed to launch.
Under the hood
Campaign operations happen in the background.
The React campaign builder connects to NestJS APIs, MongoDB, Redis, BullMQ, background workers, communication services, Stripe, AWS S3, and dedicated campaign microservices.
Recipient state
Every recipient has their own journey.
A campaign is not one linear process. One recipient may open immediately, another may need a follow-up, and another may submit an address and move into fulfillment. The platform tracks those states independently.
The result
A campaign system built around the whole journey.
The finished platform connects campaign strategy, audience selection, digital experiences, physical fulfillment, behavioral automation, payment, and analytics into one end-to-end workflow.
Features
Adaptive campaign wizard
Campaign type drives the rest of the setup. Event, ABM, product launch, expansion, takeout, customer success, express send, HR, referral, and custom each surface different goals and steps.
Existing audience selection
Campaigns use existing contact lists, with recipient count, association, state tracking, and duplicate handling.
Predefined landing pages
JSX-based campaign templates with configurable content and recipient variables. Users edit the experience in-product instead of supplying arbitrary HTML.
Address collection
Landing pages can collect a recipient address so physical gifts can move into fulfillment.
Gift fulfillment
Physical gifts are selected, associated with recipients, costed with shipping, and tracked through fulfillment.
Postcard campaigns
Postcards can be selected and configured as another physical touchpoint with personalized content and recipient address.
Multi-step outreach
Sequences mix email, postcard, gift, and other channels. Follow-ups can wait, react to opens, or fire after an address is submitted.
Behavior-based automation
Opens, clicks, page visits, form and address submissions, gift delivery, time delays, event dates, and booked meetings can all trigger the next action.
Recipient-level state
Each recipient progresses independently through draft to running, paused, completed, or cancelled, so one campaign can hold many journeys.
Stripe payment before launch
Gift, shipping, postcard, and campaign costs roll into one price. Payment completes before the workflow is allowed to start.
Campaign analytics
Owners can monitor recipients, opens, clicks, visits, submissions, gift and postcard status, conversions, spend, errors, and recipient-level state.
Outcomes
- Adaptive campaign wizard
- Multiple campaign types and dynamic goals
- Existing contact-list integration
- Predefined JSX landing-page experiences
- Recipient personalization variables
- Address collection
- Gift selection and fulfillment
- Postcard campaigns
- Multi-step outreach and behavior-based follow-ups
- Recipient-level campaign state
- Campaign analytics
- Gift and shipping cost calculation
- Stripe payment before launch
- BullMQ and Redis background processing
- NestJS, MongoDB, AWS S3, and Resend
- Microservice architecture
- Authentication, retries, and failure handling