Google Sheets Email Script Warmup: Apps Script Mail Merges
The Warmuply TeamLast checked: October 2026
A Google Sheets mail merge script is a free way to send a personal email to everyone on a spreadsheet from your own address. Google Sheets email script warmup gets your inbox ready to send that many. The script decides how fast to send. It can't tell you how many your inbox can safely handle today.
This page is for anyone who wants to send email from Google Sheets with Apps Script, Google's free tool for writing small programs inside Sheets and Gmail, whether you wrote the script or someone gave it to you. Here's what its limits mean for a new or quiet inbox, and how Warmuply gives your script the right number each day.
Why does an Apps Script mail merge need warmup?
Because a script can send hundreds of emails in minutes, and a new inbox has no history to back that up. Google's sender guidelines say to send at a steady rate, avoid bursts, and start with a low volume to people who engage with you, then build up slowly.
Script emails come from your own account, so they shape your sender reputation: the trust Gmail and Outlook place in your address and domain. Sending too much, too soon is a common reason an Apps Script mail merge lands in spam, and it can hurt every email your business sends.
Email warmup builds that history gradually, before your first bulk send.
What are the Apps Script email limits?
Apps Script has its own daily email quota, separate from the Gmail limits for email you send by hand. These are the numbers Google listed when we checked:
| Limit | Google Workspace | Free Gmail account |
|---|---|---|
| Email recipients per day | 1,500 | 100 |
| Recipients per day inside your own domain | 2,000 | 100 |
| Recipients per single email | 50 | 50 |
| When the count resets | 24 hours after the first email | 24 hours after the first email |
Google notes that trial accounts have extra limits. Its Gmail limits page says Workspace trial accounts can send 500 messages a day, and going over a Gmail limit can block sending for up to 24 hours.
Your script can check its remaining quota with MailApp.getRemainingDailyQuota(). A quota is a ceiling, not a target.
Limit vs safe volume
Illustrative example- Apps Script quota: 1,500 recipients a day
- Example safe-send number
How Google Sheets email script warmup works with Warmuply
Warmuply runs in the background. Nothing changes in how your script sends.
- Connect the address your script sends from. Sign in with Google; it takes about a minute. A timer-based script always sends from the account that created the timer, so warm up that exact address.
- Let warmup run. Warmuply sends and receives everyday-looking emails with our network of inboxes, a little more each day. Your contacts never see them.
- Fix your domain settings. We check SPF, DKIM and DMARC, three DNS records (settings on your domain) that prove your email really comes from you. If something's wrong, we explain it in plain English and give you the exact text to paste.
- Check your safe-send number. Each day, Warmuply shows how many emails your inbox can safely send today. It goes up as your inbox warms. Most inboxes need around 4–12 weeks before sending at full volume.
- Set your script's daily cap to that number, leaving room for the regular email you'll send by hand.
Placement tests show whether you reach the inbox, Promotions or spam at Gmail, Outlook and Yahoo. If your domain lands on a blacklist (a list of senders flagged for spam), you'll know the same day.
Runs alongside how you send
How to pace your script with your safe-send number
Give your script two limits: a small batch each hour and a daily cap you change each morning. Say your safe-send number is 80 and you're emailing 300 customers. With a cap of 80, the list goes out over several days, at a steady pace.
Most scripts pace themselves with a time-driven trigger, a timer that runs part of the script on a schedule. Google may shift the run time slightly, so "every hour" means roughly once an hour. Triggers can run as often as every minute, but steady hourly batches are easier on a new inbox.
If your script has no cap or batch setting, it may send the whole sheet in one run. Our free script in the guide to sending a mail merge from Google Sheets with Apps Script has both settings, and you can paste your safe-send number into its DAILY_CAP.
For a wider look at how many to send, see our guide to how many emails you can send a day without landing in spam.
If you'd rather not run a script at all, our guide to how to mail merge in Gmail compares the other options.
What warmup can't fix
Warmup builds trust in your inbox. It can't make people want an email they didn't expect.
- Who you email. Send to people who know you or would reasonably welcome your email. Google's guidelines say not to buy addresses or email people who didn't sign up to hear from you.
- Spam reports. Google asks senders to keep their spam rate in Postmaster Tools (Google's free dashboard for senders) below 0.10%, and never reach 0.30%. On a small send, a few "Report spam" clicks can push you past that.
- What the email says. Write like a one-to-one email, keep to one or two links, and skip attachments. Tell people how to opt out, and stop emailing anyone who asks.
Our guide to spam trigger words explains which wording matters and which doesn't.
Before you hit send
- Your script's daily cap is at or below today's safe-send number, with room for regular email.
- The script sends in small batches and marks each row as sent, so nobody gets emailed twice.
- SPF, DKIM and DMARC pass. Check them free with our domain checker.
- Everyone on the sheet knows you or would reasonably expect to hear from you.
Start a free 7-day trial. No credit card needed.
Frequently asked questions
Not for warmup. Both send from your own account, and Google’s own mail merge sample, which uses GmailApp, says it’s subject to the same Apps Script email limits. MailApp only sends email and can’t read your inbox. Either way, the same daily cap and the same reputation apply.
Yes, but read what it does before you authorize it. Check that it sends in batches, has a daily cap you can change, and records who it has emailed so it never sends twice. Whoever creates the timer is the sender, so make sure it runs from the address you warmed up.
No. Warmuply runs alongside your script and doesn’t touch your code or your sheet. Each day it shows your safe-send number, and you type that number into your script’s daily limit setting. Nothing changes in how your script sends.
No. Warmup emails are exchanged with our network of inboxes, not your contacts, and they’re filed away so they don’t clutter your inbox. Your spreadsheet is never used for warmup.
The script will run, but Apps Script lets free accounts email only 100 recipients a day, compared with 1,500 on Google Workspace. Warmuply works with Google Workspace addresses on your own domain, like you@yourcompany.com.
Sources (8)
- Quotas for Google Services (Apps Script) (checked October 2026)
- Gmail sending limits in Google Workspace (checked October 2026)
- Class MailApp (Apps Script reference) (checked October 2026)
- Class GmailApp (Apps Script reference) (checked October 2026)
- Create a mail merge with Gmail & Google Sheets (Apps Script sample) (checked October 2026)
- Installable Triggers (Apps Script) (checked October 2026)
- Class ClockTriggerBuilder (Apps Script reference) (checked October 2026)
- Email sender guidelines (Gmail Help) (checked October 2026)
Related guides
- Mail Merge from Google Sheets with Apps Script (Free Script)To send a mail merge from Google Sheets with Apps Script, add your contacts to a sheet, paste a script into Extensions > Apps Script…Read the guide
- How Many Emails Can I Send a Day Without Going to Spam?How many emails can I send a day without going to spam? There’s no single number. Google lets most Workspace users send up to 2,000…Read the guide
- How to Mail Merge in Gmail: Built-in, YAMM, GMass, SheetsHere’s how to mail merge in Gmail: list your contacts in a Google Sheet, write one email with merge tags for details like first names…Read the guide
Get your inbox ready before you send.
Warmuply warms up your Google Workspace inbox in the background and shows you how many emails you can safely send each day.
No credit card required.