The developer’s marketing playbook

From preview to your first live campaign

Your starter prompt gives you a strategy and local implementation. A live campaign needs a sender, a list you can use for that campaign, and a process for handling what happens next.

Decide what is being sent

A welcome campaign helps new users reach a useful result. A newsletter goes to people who subscribed to it. Outbound introduces your product to a relevant business. Keep those audiences and their enrollment rules separate. Preserve essential account email behavior when someone opts out of marketing.

Connect your provider

Use the email service already in your app when it supports your campaign. Otherwise choose one that supports your use case, suppression, delivery events, and the scheduling or API integration you need. Check its current terms, limits, and pricing before buying; some services restrict unsolicited outreach.

Your agent should create an adapter from current official documentation. Keep API keys in environment variables. Define the sender name, reply address, and an owner who checks replies.

Verify the domain with the records your provider supplies. SPF identifies authorized senders, DKIM signs messages, and DMARC sets authentication policy. Gmail's current guidance specifies authentication and additional requirements for bulk senders, including one-click unsubscribe for marketing and subscribed messages. Follow the applicable requirements for your provider and audience. Google's sender guidelines.

Make each scheduled email conditional

Immediately before delivery, check that the recipient remains eligible and has not opted out, bounced, complained, or replied to outbound. Cancel obsolete onboarding reminders after activation. Keep a durable record of sends so a retry or restart does not resend the same campaign step.

Use the application's existing worker or the provider's automation. Define where it runs, how it restarts, and who can pause it. Closing a coding-agent session must not silently stop a supposedly live campaign.

Test before enrolling customers

Send a test only to an address you control after explicitly authorizing it. Verify the message renders, its destination works, and the reply reaches the monitored inbox. Then exercise unsubscribe, bounce handling, duplicate events, and a scheduler restart. Authenticate incoming provider events using its documented mechanism.

Record the results in marketing/launch.md. If an integration remains mocked, label it. Do not enroll real contacts until the sender, event handling, and content are ready.

For an initial campaign, review the exact audience and messages together. Confirm recipient eligibility and applicable requirements for your market before sending. Publicly listing a business address does not grant newsletter consent.

Measure one useful outcome

For onboarding, define activation within a fixed window after enrollment. Track activated eligible users divided by eligible enrolled users, with counts shown alongside the percentage. This describes a cohort; it does not by itself prove the emails caused activation.

For outbound, count qualified positive replies from unique contacts divided by unique delivered contacts. Define “qualified” before sending: for example, a relevant buyer who confirms the problem and wants a next step. Track unsubscribes, complaints, and bounces alongside outcomes.

Review real responses before changing the campaign. Use the weekly review prompt to propose one change at a time.