Answering calls and placing them are different jobs with different prerequisites. If you already have a receptionist you have some of this, but not the two that matter most.
A number and an agent
The same /phone-numbers and /agents as inbound.
Use a different agent from the one answering your main line. An agent written to greet callers opens with the wrong sentence when it is the one who rang.
People to call — with a voice phone
/contacts. Create contacts by hand, or Import CSV — “Click to select a CSV file” — then map each column.
Read the mapping screen carefully, because this is where campaigns quietly lose people. The phone targets are not one field:
| Import target | Used by |
|---|---|
| Voice phone | Calls |
| SMS phone | Text messages |
| Name · Company · Email · Skip | Everything else |
A contact imported with a number in SMS phone but nothing in Voice phone is in your list and cannot be called. The campaign composer will later mark it ”— no phone — will skip” and the preview will count it, but only if you look.
Numbers want E.164: “Invalid phone number. Use format like +14155551234.”
Group contacts into a List (+ Create new list…) or leave them loose and select by tag later. The import tells you what it did — “Imported N new, updated N into …”.
A signature
Before a workspace’s first outbound campaign of any kind — voice, SMS or WhatsApp — someone has to accept an outbound-calling compliance acknowledgment. Until then, launching fails. The Launch button becomes Accept and launch.
It exists because Octo dials in several countries whose rules on disclosing AI and recording calls genuinely differ, and encoding those per country is explicitly not something we do. The platform gives you the tools and asks you to confirm that using them lawfully is your side of the deal.
Two consequences:
- Once per workspace, not once per campaign. The first launch is gated; the twentieth is not.
- Version-scoped. If the wording changes materially, everyone is asked again — agreeing to the old text is not agreement to the new one.
A timezone
A campaign schedule carries an IANA timezone, and unlike the days and hours it is not optional — “9am” is not a time until you say where.
Set it to where the people you are calling are. This is the most common way a campaign ends up dialling at an hour nobody intended.
If you are calling across several time zones, there is a better control for it in Advanced settings: Respect recipient timezone (8pm – 8am), which suppresses calls during each recipient’s night rather than yours.
The trial allowance
If the workspace has not subscribed, outbound calling is metered separately, and the numbers are small on purpose:
| Limit | Default |
|---|---|
| Calls per day | 10 |
| Calls per workspace, ever | 50 |
Three things bite:
The day is a UTC day. It resets at midnight UTC, not yours. In California your allowance refills in the afternoon.
The lifetime number never resets. When it is gone the remedy is a subscription, not waiting — the opposite of the daily one, and the two failures look identical from the outside.
A second workspace does not help. Attempts are counted against the person as well as the workspace.
Both are defaults rather than laws: they can be raised, and 0 means unlimited on
either axis.
What you do not need
You do not need consent, suppression and retry policy solved before your first campaign. Start with five people who are expecting your call — run your first campaign — and read the limits that bind before the list gets long.