Reference
Sending options
Skip contacts who were emailed recently or never engage, add UTM parameters to links, tag campaigns, and spread a send over time, by time zone or by each contact's best hour.
The Settings step of the campaign wizard controls who is skipped, how links are tagged for your analytics and how the campaign is labeled. When you send, you also choose how the emails are spread over time. This page covers every option and its API field.
Smart sending
Smart sending skips contacts who received another campaign recently, so nobody gets two campaigns in a row. Set Skip if emailed within (hours) from 1 to 168. Campaigns created in the dashboard start with smart sending on at 16 hours.
Emailit checks when sending starts: a contact who was sent any campaign email in that many hours before is left out. Emails from automations and the Email API don’t count. In the API, set smart_sending_hours, or null to turn it off.
Skip unengaged contacts
Skip unengaged contacts leaves out contacts who were sent 3 or more campaign emails in the last 90 days and opened or clicked none of them. Mailbox providers watch how many of your emails go unread, so this protects your sender reputation. In the API, set exclude_unengaged to true.
Because some email apps load images automatically, a few contacts who never read your email still count as engaged.
Audiences can also leave out their unengaged subscribers from every campaign, with a window you choose. See Unengaged contacts.
Send summary
Contacts skipped by smart sending or as unengaged, by this setting or by their audience’s unengaged filter, don’t receive the campaign and don’t use credits. The campaign report shows a Send summary with how many contacts in the audience were sent the campaign and how many were skipped by each rule or because they’re suppressed.
UTM parameters
Turn on Add UTM parameters to links to add UTM parameters to every link in the campaign, so Google Analytics and your shop see the visits and sales it brings. Links to Emailit itself, such as the unsubscribe link, are left alone, and a link that already has a UTM parameter keeps its own value for it. The parameters are added to the end of each link, and the rest of the link stays exactly as you wrote it, so signed links keep working.
| Parameter | Default |
|---|---|
utm_source |
emailit |
utm_medium |
email |
utm_campaign |
{campaign_name} |
utm_content |
Not added unless you set it. {variant} is a good value for A/B tests. |
utm_term |
Not added unless you set it. |
utm_id |
Not added unless you set it. |
Values can use {campaign_name}, {campaign_id}, {subject}, {variant} (the A/B version’s name) and {send_date} (YYYY-MM-DD), up to 191 characters each. Campaigns created in the dashboard start with UTM parameters on. In the API, set utm_tracking to true and optionally utm_params:
{
"utm_tracking": true,
"utm_params": { "source": "newsletter", "campaign": "{campaign_name}-{send_date}", "content": "{variant}" }
}Tags
Tags are labels for your own use, such as newsletter or black-friday. They show on the Campaigns list and the calendar, and you can filter by them. Separate tags with commas. A campaign can have up to 20 tags of up to 50 characters each. In the API, set tags to a list of strings.
Send strategies
When you select Send campaign, pick how the emails go out:
| Strategy | API value | What happens |
|---|---|---|
| All at once | immediate |
Everyone gets it now, or at the scheduled time. |
| Throttled | throttled |
The send is spread evenly at Emails per hour, from 100 to 1,000,000. Use it for large lists or a new sending domain. |
| Recipient’s local time | local_time |
Each contact gets it at the date and time you pick, in their own time zone. |
| Best time per recipient | smart_time |
Each contact gets it at the hour they usually open or click, within Window (hours) from the start, 1 to 48 (default 24). |
The campaign stays In process until the last email is handed to delivery. Each batch checks its contacts again right before it goes out, so contacts who unsubscribe or are deleted during a spread-out send don’t get it.
Recipient’s local time
The time zone of a contact comes from the tracking script, which records the browser’s time zone with each event it sends for a known contact. Contacts without one get the email at that time in the Timezone you choose (UTC by default).
Sending starts when the chosen time arrives in the earliest time zone (UTC+14) and ends when it arrives in the latest. If the time has already passed in a contact’s zone when sending starts, they get the email right away. A time that has already passed in every zone is rejected.
Best time per recipient
Emailit looks at when each contact opened or clicked campaign emails in the last 90 days and sends at their most common hour. Contacts without that history get the hour when the audience engages most, or the start time.
Use the API
Pass send_strategy and send_options to Send or schedule a campaign:
curl https://api.emailit.com/v2/campaigns/cmp_4Tq9Xv2kLm8Rw/send \
-X POST \
-H "Authorization: Bearer $EMAILIT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"send_strategy": "local_time",
"send_options": { "local_time": "2026-11-27T09:00", "timezone": "America/New_York" }
}'| Strategy | send_options |
|---|---|
throttled |
per_hour, required. |
local_time |
local_time as YYYY-MM-DDTHH:mm, required. timezone, an IANA name such as Europe/Prague, for contacts without one. |
smart_time |
window_hours, default 24. timezone is optional. |
immediate, throttled and smart_time also accept scheduled_at to start later. local_time ignores it and starts on its own. A/B tests always send all at once.