Skip to content

Broadcasts

A broadcast is a one-to-many email: you design it once and send it to an audience — all of your contacts, or the contacts in one or more segments. Where a template is sent by your code through the API, a broadcast is composed and sent from the dashboard.

Composing

Open Broadcasts and create one. The editor is the same drag-and-drop canvas as the template editor, and a draft is saved automatically as you work.

The header carries everything about the send:

  • From — must be an address on a verified domain.
  • Reply-To — optional.
  • ToAll Contacts, or one or more segments.
  • When — leave it empty to send immediately, or set a time to schedule it.
  • Subscribe to — optionally scope the send to a topic, so only contacts subscribed to that topic receive it.
  • Subject and Preview text.

Variables

A broadcast is personalized from the contact record, so its variables are a fixed list — you can't invent one, because there would be nothing to fill it with. Type {{ in the body to insert one:

VariableFilled with
{{{contact.first_name}}}The contact's first name
{{{contact.last_name}}}The contact's last name
{{{contact.email}}}The contact's email address
{{{contact.your_property}}}Any custom contact property you've defined
{{{SENDGRAIL_UNSUBSCRIBE_URL}}}That contact's one-click unsubscribe link

The Variables panel in the editor menu lists them all and copies a token to your clipboard — useful for the subject line, which has no insert menu.

Fallbacks

Not every contact has every field filled in. Click a variable in the body and give it a fallback — the value rendered when that contact's field is empty. A greeting of Hi {{{contact.first_name}}} with the fallback there renders as Hi Ada for a contact with a first name, and Hi there for one without, rather than a bare Hi.

Fallbacks are per broadcast, so the same property can read differently in a product announcement than in a receipt. A custom property's own default is used when the broadcast doesn't override it.

Reviewing and sending

Review shows the send-blocking checks and the recipient count — expandable into a breakdown of who was excluded and why (globally unsubscribed, hard-bounced, or not subscribed to the chosen topic). A broadcast with zero eligible recipients can't be sent.

You'll also be warned if the body has no unsubscribe link. Every marketing send needs one: include {{{SENDGRAIL_UNSUBSCRIBE_URL}}}, or use the footer block that carries it.

Sending is a deliberate slide-to-confirm. Once queued, a broadcast fans out into one email per contact and is no longer editable — but a scheduled or queued broadcast can still be cancelled.

Scheduling

Leave When empty and the broadcast goes out immediately. Set a time and it's scheduled instead — the slider reads Slide to schedule.

The When field takes a time in whatever form suits you:

  • one of the shortcuts — Now, In an hour, Tomorrow, Tomorrow morning / afternoon;
  • a bare time — 7:30 PM — which means today;
  • a full date — Jul 20, 9:00 AM.

It reads times in your own timezone (shown in the picker's footer) and shows what it resolved to next to the field, e.g. Sends Jul 20, 9:00 AM · in 43 min. A send must fall between now and 30 days out; anything else is flagged and the slider stays locked. A time that lapses while you're still editing is flagged too, rather than failing when you try to send.

Scheduled broadcasts are dispatched by a job that runs every minute, so a send goes out on the first tick after its time — within a minute, never early. Running it requires Laravel's scheduler (schedule:work or a cron entry) plus a queue worker.

Editing a scheduled broadcast

A scheduled broadcast is frozen: its content, audience and send time can't change while a send is pending, so what goes out is exactly what was reviewed.

  • Edit broadcast (in the ⋮ menu, at any status) renames it — the name is a label, not content.
  • Unschedule returns it to a draft and reopens the editor. Change what you like, then schedule it again.
  • Cancel is different, and final: it stops the send instead of returning it to draft.

Only a draft opens in the editor — clicking a scheduled or sent broadcast opens its read-only detail page.

Testing first

Send a test delivers a one-off copy through the real sending pipeline, to up to 25 recipients. Fill in sample values for the variables to see how the personalization reads before it reaches your list.

Duplicating

Duplicate copies the content, targeting, subject and fallbacks into a fresh draft — the usual way to run a recurring send without rebuilding it.

Next steps

Transactional email on your own domain.