Google Forms notification rules
Last updated September 2026 · ~10 minute read
Google Forms has no rule engine. What it documents is a single menu item per form — “Get email notifications for new responses” — with no condition, no recipient list and no way to route a particular answer to a particular person. Anything shaped like “if the answer is Urgent, email the on-call address” has to be built outside Forms, and the part that catches people out is not the code. It is the daily email quota it runs into.
This page is about the gap between the switch Google ships and the rule people are actually asking for. If you have not turned the basic notification on yet, start with email notifications for Google Forms; if you turned it on and nothing is arriving, that is notifications not working.
How we checked
Every claim about Google's behaviour here is tied to a page we opened, and the URL is in the text. Where Google publishes nothing, this page says so rather than filling the silence with a plausible figure.
What Google's built-in notification actually is
Google's help centre documents it in the View & manage form responses page, under the heading “Turn response notifications on or off”. The whole feature is four steps:
“Open a form in Google Forms.” … “At the top of the form, click Responses.” … “Click More.” … “Click Get email notifications for new responses.”
That is the entire documented surface, and each absence below is a thing people assume is hiding in a submenu somewhere:
- No condition. The page documents no way to make the alert depend on an answer, a score, a section, or anything else. It fires on every response or on none.
- No extra recipients. The page never names a recipient at all. It documents no address field and no list, so there is nothing to add a colleague to.
- No per-question routing. Nothing connects a particular question to a particular destination; the notification does not know which question you care about.
- No frequency control. No digest, no batching, no quiet hours — it is on or off.
- Email only. No push, no SMS, no other channel documented in Forms itself.
Google's own page points outward rather than deeper: “To get more notifications options and send customized follow up emails to respondents, download the Form notifications add-on.” For anything more than on-or-off, Google's answer is that you leave Forms.
What a rule is actually made of
Underneath every “conditional Google Forms notification” tutorial, add-on and app is the same three-part structure, and the parts are what you are really buying or building.
1. A trigger
Something has to notice the submission. Google's installable triggers documentation defines the one you need: “An installable form submit trigger runs when a user responds to a form.” Installable rather than simple, because installable triggers “can call services that require authorization”, and sending mail is one of those.
Two details from that page decide more than they look like they should. “Installable triggers always run under the account of the person who created them” — the rule belongs to whoever installed it, and its quota is theirs. And “Script executions and API requests don't cause triggers to run”, so a rule you test by submitting programmatically will appear not to work.
2. A condition read off the response
The trigger hands your function the submission, and the condition is ordinary code reading it. Google's
FormResponse
reference describes it as “A response to the form as a whole”, whose answers you reach through
getItemResponses() — “Gets all item responses contained in a form response, in the same
order that the items appear in the form.”
Each of those is an
ItemResponse,
“A response to one question item within a form”, with getItem() to identify the
question and getResponse() for the answer. Read the return type carefully before writing any
comparison: Google documents that getResponse() returns “a String” for most question
types, but an array for checkboxes and a nested array for grids. A condition written as a string equality
check is silently wrong on a checkbox question — it is the single most common bug in a hand-rolled rule.
Two other reads are often the condition itself: getRespondentEmail(), which Google notes
works only “if the Form.setCollectEmail(collect) setting is enabled”, and, on quizzes,
getGradableItemResponses(), which still returns an item “even if there isn't an actual
response” so a blank answer can be scored.
3. A send
Then the rule sends. Google documents two services. MailApp is the narrow one: “Unlike GmailApp, MailApp's sole purpose is sending email. MailApp cannot access a user's Gmail inbox.” GmailApp “Provides access to Gmail threads, messages, and labels” and can send from an alias. Google's own note is that “Changes to scripts written using GmailApp are more likely to trigger a re-authorization request from a user than MailApp scripts”, which is a good reason to reach for MailApp unless you specifically need the mailbox.
That is the whole shape: trigger → condition → send. Everything else a rule-building product sells you is an interface over those three things, plus the problem in the next section.
Add-ons: somebody else's rule engine
Most people should not write this themselves, and Google's own help page sends you to an add-on: third-party code installed from the Google Workspace Marketplace into the Forms editor, running with permissions granted to your Google Account — including permission to send mail as you. Google Forms add-ons covers what that authorisation screen is actually granting, and why the menu is missing on a phone.
The thing to carry over: an add-on does not escape the limits below. It is Apps Script running in your account, against your quota.
The quota nobody plans for
This is the part that turns a working rule into a mystery three weeks later. Apps Script email is capped, and Google publishes the figures on Quotas for Google Services:
| Limit | Consumer account (e.g. gmail.com) | Google Workspace account |
|---|---|---|
| Email recipients per day (for example, with MailApp) | 100 / day | 1,500 / day |
| Email recipients per message | 50 / msg | 50 / msg |
| Triggers total runtime | 90 min / day | 6 hr / day |
| Script runtime | 6 min / execution | 6 min / execution |
| Triggers | 20 / user / script | 20 / user / script |
Read the first row carefully. A gmail.com account gets 100 email recipients a day — not 100 emails. A rule that notifies three people per submission exhausts that after thirty-three responses. Google is explicit about what happens then: “If you exceed a quota or limitation, your script throws an exception and execution stops.”
Nothing in Google Forms surfaces that. The form keeps accepting responses and the emails simply stop —
exactly what a broken notification setting looks like from an inbox. The one line of defence worth adding is
MailApp.getRemainingDailyQuota(), which Google documents as returning “the number of
recipients you can send emails to for the rest of the day.”
Two more things Google states about these numbers, both easy to miss: quotas are “per user and reset 24 hours after the first request” — a rolling window, not midnight — and “all quotas are subject to elimination, reduction, or change at any time, without notice.” Check the page before designing around a specific number.
How Forms+ does it
Forms+ is a native iPhone and iPad client for your real Google Forms, and it ships the three-part structure above as a screen instead of a script. In the editor's Tools sheet, under Automate, three of the PRO entries are the ones this article is about — Notification rules…, Conditional email… and Response digest email… — alongside the per-form Push notifications and Email notifications toggles the sibling guides cover. They are not the whole group: on an ordinary form Automate ships eleven PRO entries, and thirteen once the form is a quiz, because two proctoring rows are appended only then. Three of the eleven arrive by remote switch rather than with the build, so they are absent until the app has fetched its settings once — the count you see is a property of your form and your install, not a fixed number.
Notification rules is the rule builder: an Enable notification rules switch, then a list you add rules to. A rule has Conditions — pick a question, then is, is not, contains, matches (regex) or is answered — with a Match row for whether ALL or ANY must hold. Limit how often it runs adds After response # (0 = off) and Every Nth response (0 = off). Then a Do this row picks what the rule actually does, and there are three choices, not one:
- Send an email — To (email), Subject and Body. The screen's own note is the honest one: “Sends an email from your Google account.”
- Call a webhook — one Webhook URL, described on the screen as “POSTs the response as JSON to your https URL (Zapier/Make/your server).”
- Post to Slack — a Slack webhook URL plus an optional Message; leave the message empty and it posts a formatted summary instead.
Email subject and body, and the Slack message, accept {{Question Title}} tokens. All three
are chosen inside the rule itself — the destination belongs to whichever rule matched, rather than to a
separate webhook screen — and all three are behind the same PRO gate as the rule builder.
Conditional email uses the same condition vocabulary but is aimed at people rather than
at you: each rule carries To, Cc, Bcc, Subject and Body, all of which accept
{{Question Title}} tokens, plus a Respondent autoresponder that emails the person who
submitted — which, as the screen states, “requires the form to collect email addresses.”
Response digest email is the opposite tool: Daily or Weekly. Read its
footer carefully, because it is a throttle rather than a timetable — a summary goes out “at most once per
interval, and only when there are new responses”, so a silent form stays silent.
One thing worth saying plainly, because it is the same limit as the section above: these rules run as Apps Script in your Google account, on the installable form-submit trigger. An email action sends through MailApp, so the daily recipient quota in the table applies to it exactly as it applies to a script you write yourself — a nicer interface does not buy you more email. A webhook or Slack action is an HTTPS POST rather than mail, so it does not spend that recipient quota; Apps Script meters those calls under a separate URL Fetch limit on the same quotas page.
Rules you can set up from your phone
Forms+ builds conditional notifications, autoresponders and digests on your real Google Forms, in your own Google account — no migration.
Get Forms+ free on the App StoreIs a rule worth building?
Honestly, often not. A rule earns its keep when the response is time-critical and rare — a safety report, an escalation, a high-value order — where a human is interrupted within minutes and the volume is low enough that the interruption stays meaningful. That is also the case where quotas never bite.
It earns its keep much less often than people expect. If responses arrive steadily and nobody acts on any individual one within the hour, a rule is an expensive way to generate mail you will end up filtering; reading them on a schedule, or taking one digest, matches how the work is actually done. And a conditional notification that fires on eighty per cent of submissions is not a rule, it is a notification with extra steps, and it will be muted within a fortnight. The question to ask first is not “can this be automated” but “what happens differently in the next ten minutes because this email arrived?” If the answer is nothing, read the responses.
Frequently asked questions
Can Google Forms send a notification only when someone picks a certain answer?
Not with the built-in setting. Google's help page documents one item — “Get email notifications for new responses” — under “Turn response notifications on or off”, and documents no condition, no recipient list and no per-question routing anywhere on that page. A conditional alert has to be built with Apps Script or installed as an add-on.
What does a Google Forms notification rule need to work?
Three parts. An installable form-submit trigger, which Google documents as running “when a user responds
to a form”; a condition read off the FormResponse object, usually through getItemResponses()
and ItemResponse.getResponse(); and a send, through MailApp or GmailApp. Google documents that
installable triggers “always run under the account of the person who created them.”
How many notification emails can an Apps Script rule send per day?
Google's Quotas for Google Services page lists “Email recipients per day (for example, with MailApp)” as 100 per day for consumer accounts such as gmail.com and 1,500 per day for Google Workspace accounts, with a separate limit of 50 recipients per message. Quotas are per user and reset 24 hours after the first request, and Google states that all quotas are subject to change at any time without notice.
What happens when a notification rule runs out of quota?
Google states that if you exceed a quota or limitation, your script throws an exception and execution stops. Nothing in Google Forms tells you this happened — the form keeps collecting responses normally and the emails simply stop, which is why a quota failure is usually mistaken for a broken notification setting.