1. Start with a list you can work with
Keep one person per row. Include their email address and only the fields you will actually use, such as first name, company and the reason you are contacting them. Remove people who have asked not to hear from you. OutreachSheet also checks its permanent Do Not Contact list on import and before each send.
If your list needs work first, prepare a Google Sheets mail merge list. New to OutreachSheet? Start with the setup walkthrough.
2. Give every follow-up a purpose
The first email introduces the reason for getting in touch. A follow-up can add a relevant detail, answer a likely question or ask whether someone else handles the subject. Finish with a clear closing note. Write the sequence once, then personalise it with your sheet columns.
| Step | Purpose | Gap after previous send |
|---|---|---|
| First email | A specific reason to talk | Start |
| Follow-up 1 | One useful detail | 3 days |
| Follow-up 2 | A simple question | 7 days |
| Final note | Close the loop | 14 days |
In OutreachSheet, delays run from the previous email. The example above is roughly days 0, 3, 10 and 24, subject to your allowed sending hours and days. It is not a day 0, 3, 7 and 14 schedule.
For a list spanning several markets, prepare each language’s follow-up sequence before starting.
3. Preview, test, then start
Use the live preview and send a test to yourself. Check the name, company, offer and any fallback text. Leave test mode on while you check the schedule: it logs what would happen without sending to the list. Once the message and schedule are ready, turn test mode off and start sending.
4. Leave room for follow-ups in the daily limit
New contacts and total messages have separate limits. The defaults are 30 new contacts and 60 total emails per day. Follow-ups count towards the total. Sending runs in small batches every ten minutes within your chosen days and hours.
Google applies account and Apps Script quotas as well. Its published Apps Script allowance is currently 100 email recipients per day for consumer accounts and 1,500 for Google Workspace; trial and other account restrictions can differ. Check Google’s current Apps Script quotas before increasing your settings.
5. Take over when the conversation begins
OutreachSheet checks for replies hourly. You can also run a check immediately. A detected reply stops the sequence, while an out-of-office message delays the next follow-up. Review the Replies tab and answer real conversations yourself; automatic follow-ups are for the people who have not yet replied.
If you need to stop, choose between pausing everything and stopping new contacts while existing follow-ups continue. The evening report gives you a daily view of sending and replies.
How to thread Gmail API cold email follow-ups
When you build your own sender with the Gmail API, include the original message’s threadId, set In-Reply-To and References headers according to the email standard, and keep the subject line matching. Gmail’s API documents all three conditions for adding a message to an existing thread. A “Re:” prefix by itself is not enough. Read Google’s Gmail API thread guide.
This describes the general Gmail API requirements, not a guarantee about a particular sending tool. Test a follow-up with a mailbox you control before relying on thread behaviour.
When is a different tool a better fit?
Use Gmail directly when you only have a few people to contact. A shared sales platform may suit a team needing deal pipelines, multiple mailboxes or central reporting. OutreachSheet suits people who want a list-based Gmail workflow and a copy they own without a recurring software fee.
Explore the complete OutreachSheet workflow →
Related reading
- Three ways to send mail merge from Google Sheets
- One contact list, several languages
- OutreachSheet vs GMass (follow-ups need GMass Premium)
Last checked: 18 October 2026.
