Privacy policy

Last updated August 2026

The short version

There are no accounts and no logins. We do not ask for your name or email to generate a speech. The answers you type stay in your own browser, and the small amount we do store is anonymous.

What stays in your browser only

Everything you type into the form — the two partner names, who you are speaking about, your roast level, and all three free-text answers about how you met, the memory and why their partner suits them — is saved in your browser's localStorage so you do not lose it on a refresh. That copy lives on your device. Clearing your browser data deletes it, and we cannot read it.

Those answers are sent to our server, and on to the AI model, at the moment you press generate, because that is how the speech gets written. They are not written to our database.

What we store

When a speech is generated successfully, we save one row containing:

  • the generated speech text
  • the role you selected, for example Best Man
  • the roast level, a number from 1 to 10
  • a random anonymous session id generated in your browser
  • a timestamp

We use this to see which roles and roast levels people actually use, and to check the quality of what the tool is producing. The session id is a random identifier — it is not tied to your name, your email or your account, because there is no account.

These rows are kept for 30 days and then deleted automatically. A scheduled daily job removes every speech row older than 30 days, and the app also runs the same cleanup occasionally as speeches are generated. Nothing older than 30 days is retained.

What we do not store

We do not store the partner names. We do not store your free-text answers. We do not store your email address, and there is no newsletter. We do not run any third-party analytics scripts, advertising trackers, or social pixels on this site.

Abuse protection

Generating a speech costs us money, so we limit how many one person can request. To do that we take your IP address and your anonymous session id, combine them and store only a one-way SHA-256 hash of the result along with a counter. The raw IP address is not saved. Old counter rows are cleaned up automatically.

Payments

Payment for the $5 Podium-Ready PDF is handled entirely by Stripe. Card numbers are entered on Stripe's checkout page, not ours. We never see, receive or store your card details. We keep a record of the payment itself — a Stripe session reference, its status, and the anonymous session id — so we can confirm that a purchase was completed.

The AI model

Speeches are written by a large language model through our AI provider. Your answers are sent to that provider to produce the text. Please avoid typing anything genuinely sensitive into the form — it is a wedding speech tool, and it works fine with the light version of a story.

Getting your data removed

Because the stored rows are anonymous, we usually cannot connect one to you. If you know your session id or the approximate time you generated a speech, email your@email.com and we will find it and delete it. To remove the copy on your own device, clear your browser data for this site.