Skip to main content

Preparation

Outbound campaigns are available from the Business plan - on Pro the agent answers calls and dials one person at a time; dialling a whole contact list starts here. Before launching a campaign, make sure the agent has a number to dial from - its own, or one picked in the Dials from number field. You buy and set up numbers in the dashboard, in the Numbers tab; see Phone numbers.

The campaign agent

In the Campaign agent step you pick the agent that runs the calls. If you pick one built to answer the phone (a receptionist), the wizard notices: in a campaign the agent does the calling, and the receptionist’s greeting and prompt assume somebody rang it. Make an outbound version creates a separate outbound agent on top of the one you have. That agent takes over the company name, form of address, voice, knowledge-base documents, the calendar it books into and the CRM. The conversation prompt, greeting, schedule, retries and SMS come from the campaign template (appointment reminder, cash-on-delivery confirmation, payment reminder, NPS survey). It is named after its family and its job, e.g. “LadiesGym - Appointment reminders”. The same template also works without a base agent - in New agent from a template under the list, choosing “a brand-new agent”.

Contact list

You can add contacts in four ways: manually, by uploading a CSV file, by connecting a Google Sheet, or by pointing the campaign at a Calendar of booked appointments. For a file or a sheet, the first row is the column headers and every row below it is one contact. One column has to hold the phone numbers - phone_number, Phone, Telefon, Mobile or anything similar; a column named something unguessable still works when its values look like phone numbers. Numbers are normalised before dialling, so 600 123 456, +48 600-123-456 and 0048600123456 are all the same number, and a row whose number cannot be made sense of is skipped rather than dialled wrong. Every other column is passed into the call as a variable under its own name, so {{first_name}} in the prompt or the first message greets the person by name. That also means the lead sheet an agent writes itself can be handed straight to a campaign - its “Telefon” column is found like any other.

Keeping the list alive

A Google Sheet campaign can keep watching its sheet: switch on Keep watching this sheet when creating the campaign (or change it later on the campaign page) and pick how often it is re-read - every 15 minutes, hourly, every 6 hours or once a day. Rows added afterwards are queued and called without starting a second campaign, and a campaign that had already finished goes back to running when somebody new turns up. Only new numbers are queued: a contact already on the list is never called a second time, whether the row moved, was duplicated, or the number is written differently (“600 123 456” and “+48 600-123-456” are one person). A paused campaign still collects the new contacts but dials nobody until it is resumed, and a sheet that cannot be read (unshared, renamed) leaves the campaign alone and is tried again on the next interval. This is what turns an agent’s own lead sheet into a callback loop: point the campaign at a sheet the lead agent feeds, and every lead written there is called on the interval you chose. The whole setup, including how to avoid calling people the agent already reached, is in The lead loop.

A calendar as the contact list

An appointment-reminder campaign needs no spreadsheet: pick Calendar as the source and choose a panel calendar or a connected Google / Outlook one (the same calendar the agent books into - see Panel calendar). The campaign reads the appointments from now to the end of the chosen day - today, through tomorrow, through the day after, the next 3 days or the next week - and queues one call per appointment that has a phone number.
  • The number comes from the appointment’s Phone field. In Google and Outlook it is read from a Phone: line in the event description, which is how the agent writes it and how you can type it in by hand.
  • Cancelled appointments (and declined invitations) are skipped, as are ones that have already started. An appointment without a number is not queued.
  • The calendar is re-read once a day (hourly or every 6 hours are also available). Every appointment gets one call, even when the same person has two in the window. A day without appointments is not an error - the campaign waits for the next read.
  • The call receives the variables the “Appointment reminders” template uses: name, first_name, appointment_date, appointment_time, appointment_end_time, appointment_type (the event title), appointment_location, email, notes. An agent built from that template works unchanged.
The wizard picks Calendar on its own when you start from the reminders template and have at least one calendar.

Schedule

A campaign does not have to start the moment you click, and it does not have to dial at any hour. The Call settings step holds two things:
  • Campaign start - the date and time the campaign starts on its own. With no date it waits for the Start button. If at that moment the agent has no phone number assigned or the balance is empty, the start is postponed and retried every minute; after 24 hours the campaign is marked failed, with the reason shown on its page. The balance is also checked before every batch of calls: if it runs out mid-run, the campaign is paused (the queue is kept) and you get a notification and an e-mail. Top up and click Resume.
  • Calling hours - the weekdays and the hours, in your own timezone (Mon-Fri, 9:00-17:00 by default). Outside that window the campaign places no calls - it is not paused and nothing is lost: the queue waits, and dialling resumes on its own within a minute of the window opening. Retries follow the same rule, so one scheduled for 22:00 is placed in the morning. In the Europe/Warsaw timezone the campaign also skips Polish public holidays (e.g. 1 and 11 November, Christmas Eve, Corpus Christi).
You can change the window at any time - narrowing it mid-campaign simply holds the next batch until the window opens again.

Call settings

When creating a campaign you configure automatic retries:
  • number of attempts - 1 to 5 extra tries per number,
  • interval between attempts - 15 minutes, 30 minutes, one hour (the default), 2 hours, 4 hours or a day,
  • when to retry: missed, busy, voicemail,
  • Smart callback timing - retries are scheduled during the hours when your calls historically get answered most often (based on the last 30 days).
Combined with SMS after a missed call (the agent’s SMS settings), a campaign closes the loop by itself: it calls, retries at a good time, and after the final failed attempt sends an SMS.

Voicemail

Every campaign call listens for a voicemail box, whatever the agent’s “Enable Voicemail Detection” switch says. When a mailbox answers, the agent hangs up at once instead of reading the reminder to it. The attempt gets the outcome voicemail (or your own code for voicemail_detected from the outcome mapping), it does not count as answered in the campaign report, and if the campaign retries on voicemail the contact gets another attempt.

Campaign progress

The “processed” counter goes up by one per contact: called, skipped because it is on the do-not-call list, or failed. A retry of the same contact does not count it twice. When every channel on the line is busy, the contact is not marked as failed: it goes back to the queue and is picked up by the next batch.

Missed calls in the history

Every attempt, including the ones nobody picked up, gets its own entry in Call history with a status saying how it ended: No answer, Busy, Canceled or Failed, with a duration of 0:00. Those statuses are ordinary call outcomes, so you can filter CRM and spreadsheet pushes and the after-call SMS on them - they appear in the outcome list next to the outcomes the agent works out during a conversation. If your organization uses its own outcome codes, a missed call gets the code from your mapping.