Marketing automation,
in code, with no platform fee.

Lead capture, CRM wiring, lifecycle email, subscription billing and creative generation, built as code on Vercel, Resend, Supabase and Stripe. No no-code platforms, no $300/mo platform fee. You own the system, and it's debuggable when something breaks.

All engagement shapes
01

Lead pipelines

For CISNET I built a Facebook Lead Ads pipeline through a verified connection into Supabase, an admin portal and Resend email. Leads from your Facebook and LinkedIn ads land in your CRM within seconds, verified, deduplicated and ready for sales. No lead is dropped by an unmonitored Zapier step.

  • Every lead from Meta or LinkedIn Lead Gen reaches your CRM in seconds
  • Each lead verified, so fake submissions can't poison your data
  • Retry handling that stops duplicates from reaching sales
  • A dashboard showing every lead, its source and its follow-up status
02

Lifecycle email

The right email at the right moment: onboarding, activation, re-engagement and retention. Plain-text, founder-style copy. Subject lines built to earn replies, not opens. Sent from your own domain.

  • An onboarding sequence (Day 2, Day 7, Day 14) tuned to your product
  • Subject lines written to earn replies, not the generic "Welcome to..." template
  • Bounce and unsubscribe handling that keeps your sender reputation clean
  • Open and reply rates in a dashboard so you can see what works
03

CRM + webhooks

The wiring between your CRM (HubSpot, Attio, Pipedrive, Salesforce) and the rest of your stack. For small teams, I'll replace the CRM with a custom dashboard that does only what you need, for far less per month.

  • Two-way sync that keeps both systems consistent
  • One event triggers many actions (Slack, email, logging, enrichment)
  • Slack alerts on what matters: high-fit lead, churn risk, large deal
  • For teams under 10, a written recommendation on whether to drop the CRM
04

Stripe + subscriptions

Subscription billing in full: checkout, a self-service portal, failed-payment recovery, annual upgrades and coupons. It lives as code in your repo, not Zapier zaps that break when Stripe changes a webhook.

  • Stripe Checkout and Customer Portal, so customers self-serve their changes
  • An idempotent payment handler: each Stripe event processes once, so retries can't double-charge
  • Automatic recovery emails when a payment fails, with grace periods
  • A revenue dashboard: MRR, churn, failed payments and refunds in one view
05

Creative generation (static)

For agencies running paid creative at volume: one brief in, dozens of ad image and copy variants out. Brand voice and visual style are locked so output doesn't drift. Approve, reject, regenerate.

  • A standard brief format (hook, product, audience, tone) that fits your intake
  • Brand-voice guardrails so every variant sounds like your client, not generic AI
  • An approval flow: reject what misses and regenerate without restarting
  • A spend ceiling per brief, set up front, that stops the system at your cap
how it works

Engagement shapes for marketing automation.

The same paid engagement shapes apply across every focus area. Full ladder at /services.

PILOT BUILDFIXED PRICE · $750 LEAD PIPELINE SPRINTFIXED-SCOPE BUILD · $4,500 FULL-STACK BUILDMULTI-WORKFLOW · MILESTONE-PAID OPS RETAINERMONTHLY · POST-ENGAGEMENT ONLY

A pipeline to scope? Send the brief →