Prompt Kits

Build a Mailing List You Own

Every platform you build an audience on rents you that audience. The followers are real, the reach is not yours, and one change to how a feed ranks things can remove most of it overnight with no warning and no appeal. An email list is the one audience that survives that, because you hold it: the addresses sit in your own database, you can export them on any given Tuesday, and nothing between you and the person can be switched off. This kit builds that list — a signup worth completing, consent recorded properly, a way to tell one kind of subscriber from another, and a broadcast that actually reaches inboxes. It is deliberately not a marketing automation platform, and it says where that line falls.

Project type: Owned mailing list Difficulty: Beginner Time: 1 day Works with: Base44 / Lovable / v0

What you'll have at the end

  • A signup that says what someone gets and how often, rather than "join our newsletter"
  • Subscribers stored in your own database, exportable to your own file whenever you want
  • A record of when and where each person consented, which is what the law in most places actually asks for
  • One segment field, so you can send to the people a message is genuinely for
  • A broadcast you write, preview and send, with a one-click unsubscribe that works immediately
  • A simple view of growth, sends and departures — including the number that matters most, which is how many people leave after each send

Before you start

  • A reason to sign up, in one line. What the person gets and roughly how often. "Join our newsletter" converts poorly because it describes your activity, not their benefit; "new dates before they go public, about once a month" describes theirs.
  • Something to send. A list with nothing behind it decays into a list of people who forgot you. Know what your first three messages would be before you build the box that collects addresses.
  • The one thing you would want to know about a subscriber. Where they came from, which city, which service they care about — one field, chosen deliberately. This is the difference between a list and a pile of addresses.
  • A proper email delivery service account. Sending bulk email straight from an app you built is how you end up in spam folders. You need a real sending service and access to your domain's DNS settings to authenticate it.
  • Your business identity for the footer. Most countries require a real identity and a postal or registered address on commercial email, plus a working unsubscribe. Decide what you will put there.
  • An honest answer about volume. This kit is built for a list you could plausibly grow yourself — hundreds into low thousands. If you are already sending to tens of thousands, a dedicated email platform will serve you better, and the FAQ says why.

Which platform suits this

Base44 fits this most naturally: the subscriber records, the consent log, the segment field and the send history all live in one managed app with an owner screen, which is the whole shape of this project. Lovable does the same through Lovable Cloud or an optional Supabase backend, with code ownership if you later hand it to a developer. v0 will build it with server actions or API routes on Vercel, but you choose and wire the email provider yourself and verify authentication and delivery — which for a mailing list is the part that decides whether any of it works. On all three the send itself goes through an external email service, so the platform difference here is about where the list lives, not how the mail is delivered.

Start with the first prompt on a free plan. Extra usage and some connected services may cost more as you build out the project.

Build it on

How we make money

The steps

1

Build a signup worth completing

When to use this

Start here, on the site you already have or a new one.

A signup box that earns the address, with consent recorded properly.

The prompt

Add an email signup to this site for [YOUR BUSINESS].

The signup says exactly what someone gets and how often: [YOUR PROMISE, e.g. new dates and new work, roughly monthly]. Do not write "subscribe to our newsletter" anywhere, and do not invent a promise I have not given you.

Collect the email address and [ONE OTHER THING, IF ANY — e.g. first name, or their city]. Nothing more. Every additional field costs signups, and you can ask for the rest later.

Put the box where people actually are: [YOUR PLACEMENT, e.g. in the footer of every page, and on the pages where people finish reading]. Do not add a popup that covers the page as soon as someone arrives.

When someone signs up, store their address along with the date, the page they signed up from, and the exact wording of the promise they agreed to. That consent record is what proves later that they asked to be here.

[IF I WANT CONFIRMED SIGNUP: send a short email asking them to confirm, and only add them to the list once they do. This loses some signups and gains a list of people who actually want it — recommended if I will ever send to more than a few hundred people.]

Show a clear confirmation after signup saying what happens next and when they can expect the first message.

Do not send anything else yet — the broadcast comes later.

Check it worked

  • The signup states a real benefit and a real frequency, in your words
  • It asks for at most two things
  • Every signup stores the date, the source page and the promise wording
  • Nothing covers the page uninvited
  • The confirmation tells the person what happens next
  • If you chose confirmed signup, an unconfirmed address is not on the list

You'll know it worked when:

You signed up with your own address, and the stored record shows when, from where, and what you agreed to.

Watch out for

Never add anyone who did not ask. Not the addresses in your inbox, not a list you were given, not people who once bought from you unless the law where you operate genuinely allows it and you say so at signup. A list built that way generates spam complaints, and enough complaints will get your sending domain blocked — which costs you the people who did want to hear from you.

2

Make the list yours, provably

When to use this

Once addresses are arriving.

An owner screen where the list is visible, editable and exportable at any time.

The prompt

Give me a private owner screen for my subscribers.

Show every subscriber with their address, the date they joined, the page they joined from, their status — active, unconfirmed, unsubscribed, bounced — and any note I add.

Let me export the whole list to a file I can open in a spreadsheet, at any time, with no restriction. This is the point of the list: I must be able to take it with me.

Let me remove a subscriber completely on request, not just mark them inactive. People are entitled to ask for that, and I need to be able to do it in one action.

Let me add someone manually, but require me to record where their consent came from, so the list never quietly fills with addresses nobody agreed to add.

Show me the total count and how it has changed over the last few months.

Only I can reach this screen. Make sure it is properly protected, not just hidden behind an unlinked address.

Keep the public signup working exactly as it is.

Check it worked

  • Every subscriber appears with their date, source and status
  • You can export the full list to a file whenever you want
  • You can delete someone completely, in one action
  • A manual addition cannot be saved without a consent source
  • The screen is genuinely protected — signed out, its address goes nowhere

You'll know it worked when:

You exported your list to a spreadsheet on your own computer. That file is the asset; everything else is convenience.

Watch out for

Export it now, and again every so often. The habit is the whole point of owning a list — a list you have never actually taken a copy of is a list you are trusting someone else to keep, which is the situation you built this to escape. Test the protection by opening the owner address in a private browser window while signed out.

3

Add the one field that turns a list into an audience

When to use this

Once the list is running and growing.

A single segment field that lets you send to the people a message is for.

The prompt

Add one segment field to my subscribers: [YOUR SEGMENT, e.g. city, which service they are interested in, customer or not-yet-customer, how they found me].

Set it automatically where you can — from the page they signed up on, or from a choice offered at signup — and let me change it by hand on my owner screen.

Let me filter the list by that field, see how many are in each group, and let me select a group to send to later.

Let subscribers change it themselves from a preferences link, so the list corrects itself instead of drifting out of date.

One field only. Do not build tags, scores, lifecycle stages or a pipeline — this is a list of people who want to hear from me, not a sales pipeline, and I have somewhere else for that.

Keep everything from the previous steps working exactly as it is.

Check it worked

  • Every subscriber has a value in the segment field, or a clear blank
  • New signups get theirs set automatically where possible
  • You can filter and count each group
  • Subscribers can correct their own
  • No tags, scores or stages appeared

You'll know it worked when:

You filtered your list to one group and the count was a number you recognised as real.

Watch out for

One field, chosen carefully, beats five fields filled in badly. The usual failure is building a rich segmentation model that nobody maintains, so within two months every value is stale and you stop trusting any of it. If you genuinely need to track deals, stages and follow-ups, that is a different job and the CRM kit does it — a mailing list tracks people who want to hear from you, and it has no pipeline by design.

4

Send something that actually arrives

When to use this

Once you have a list and something worth saying.

A broadcast you write, preview and send, that reaches inboxes and can be left in one click.

The prompt

Add broadcasts to my owner screen.

Let me write a message with a subject line and a body, choose whether it goes to everyone or to one segment, preview it, and send myself a test before it goes out. Never let a broadcast send without a test being available first.

Send through a proper bulk email delivery service, and tell me exactly what I need to set up — including authenticating my own domain so my messages are not treated as forgeries. Do not send bulk email directly from the app.

Every message must carry, automatically: a one-click unsubscribe that works immediately and needs no login or explanation, a link to change their preferences, and my business identity and address: [YOUR BUSINESS NAME AND POSTAL OR REGISTERED ADDRESS].

An unsubscribe must take effect at once and must never be undone by a later import or manual addition.

Handle addresses that bounce: mark them and stop sending to the ones that fail permanently, because continuing to send to dead addresses damages delivery for everyone else on the list.

Keep a record of every broadcast sent, to which group, and when.

Do not build automated sequences, drip campaigns or scheduled series. One message, written by me, sent when I decide.

Check it worked

  • You can write, preview and test a message before it goes
  • Sending runs through an authenticated delivery service, not the app itself
  • Every message carries a working one-click unsubscribe and your real identity
  • Unsubscribing takes effect immediately and survives later additions
  • Failing addresses stop being retried
  • Every send is recorded

You'll know it worked when:

A real broadcast that reached your own inbox — not the spam folder — with an unsubscribe link you clicked and watched take effect.

Watch out for

Check where your test message actually lands, on an ordinary consumer email account rather than your own work address. Delivery is the entire game here: a list of two thousand people that reliably reaches the inbox is worth more than a list of twenty thousand that goes to spam, and the difference is almost always domain authentication and how carefully you built the list in step 1. Honour unsubscribes instantly and without friction — a "are you sure?" gauntlet converts an unsubscribe into a spam complaint, which costs you far more.

5

Read what the list is telling you

When to use this

After a few real sends.

Enough numbers to know whether the list is healthy, and nothing more.

The prompt

Add a simple summary to my subscribers screen.

Show me: total active subscribers, how many joined and left each month, and which pages bring the most signups.

For each broadcast I have sent, show how many it went to, how many opened it, how many clicked, and how many unsubscribed afterwards. Put the unsubscribes next to the opens, because that comparison is what tells me whether a message was worth sending.

Do not track anything beyond opens and clicks — no reading time, no location logging, no profiles built from behaviour. These are people who agreed to hear from me, not subjects to study.

Flag it plainly if a broadcast caused unusually many unsubscribes or bounces.

Keep everything from the previous steps working exactly as it is.

Check it worked

  • Growth by month is visible, with joins and departures separated
  • You can see which pages actually produce signups
  • Every broadcast shows recipients, opens, clicks and unsubscribes together
  • Nothing beyond opens and clicks is recorded
  • A bad send is flagged rather than left for you to notice

You'll know it worked when:

You sent two broadcasts and could tell which one people wanted — from the unsubscribe count as much as the opens.

Watch out for

Watch unsubscribes more closely than opens. Open rates have become unreliable as inboxes load images on people's behalf, but someone choosing to leave is a real signal about a real message. A send with good opens and a spike in departures was a message people opened and regretted, and reading only the flattering number means repeating it.

Going live

  • Authenticate your sending domain and confirm it before your first real send
  • Send a test broadcast to an ordinary consumer email account and confirm it lands in the inbox, not spam
  • Click your own unsubscribe link and confirm it works with no login and takes effect immediately
  • Confirm your business identity and address appear on every message
  • Check the signup promise on the page matches what you actually intend to send
  • Open your subscribers screen in a private window while signed out and confirm it is closed
  • Export the list once and keep the file — then do it again in a month
  • Add a privacy note covering what you store and how someone gets removed (see the legal pages prompt)
  • Confirm what your country requires on commercial email, since the rules differ and the penalties are real

Spend fewer credits

Every builder charges you for the work its AI does — so the cheapest habit is thinking before you build. These six rules cut most of the waste, whichever platform you choose.

  1. Plan in a free chat first. Sketch the whole thing in ChatGPT, Claude or Gemini — pages, features, what each form collects, what it should look like. Thinking there is free; thinking inside a builder is billed.
  2. Start from a written prompt, not a sentence. "Make me a website" is the most expensive sentence in AI building. A complete first prompt — like the ones on this site — saves dozens of correction rounds.
  3. Don't be lazy with the details. Every detail you leave out comes back as a correction you pay for. Business name, colors, every page, every form field, what happens after someone submits — put it all in the first prompt.
  4. One change per message afterwards. "Fix the header, and the form, and the colors" produces a tangle that costs more to unpick than it saved.
  5. Stuck? Stop patching. If the same fix fails about three times, don't send a fourth correction — describe the whole section's desired end state in one fresh message instead.
  6. Start free. Upgrade when you need more. Use the free allowance to build and explore your first version. Upgrade when you need more usage or paid features, and check any connected service costs before launch.

The prompts on this page are written to do most of this work for you — that's the point of them.

Read the full guide

Last reviewed: 2026-09-14

FAQ

We use cookies to analyze traffic and track affiliate clicks. By continuing, you agree to our Privacy Policy.