How to Close a Google Form After 48 Hours (3 Easy Ways)
How to Close a Google Form After 48 Hours (3 Easy Ways)
Last updated: • UVs Blog
Sometimes you need a Google Form to accept responses only for a short window—like 48 hours—then stop.
This guide shows three practical ways to close a form: manual, add-on, and Apps Script automation.
Method 1: Manually stop responses (fastest, no setup)
If you’re okay with closing it yourself at the 48-hour mark, this is the quickest option.
Open your Google Form in edit mode.
Go to the Responses tab.
Turn off Accepting responses.
(Optional) Edit the message people see when the form is closed.
Best for: small campaigns, quick surveys, and forms you can monitor.
Method 2: Use a “Form Limiter” add-on (scheduled close without code)
If you want a close time without writing script, use a Google Forms add-on that can stop responses by
date/time or number of submissions.
Note: time-based scheduling can be “near the time” rather than exactly to the minute.
If your deadline is strict, schedule a few minutes earlier.
Best for: non-technical users who want a set-and-forget setup.
Method 3: Apps Script (clean automation, no third-party add-ons)
If you prefer a controlled solution, Apps Script can automatically switch your form to stop accepting responses.
Below are two options: close exactly after 48 hours, or close at a fixed date/time.
Option A: Close the form exactly 48 hours from now
Open the form in edit mode.
Open Apps Script (menu location may vary by UI version).
Paste the code below.
Run scheduleCloseIn48Hours() once and approve permissions.
/**
* Closes the current Google Form (the one this script is attached to).
*/
function closeFormNow() {
const form = FormApp.getActiveForm();
form.setAcceptingResponses(false);
}
/**
* Creates a one-time trigger to close the form in 48 hours.
* Run this once to schedule the close.
*/
function scheduleCloseIn48Hours() {
// Remove older triggers for safety (optional)
ScriptApp.getProjectTriggers().forEach(t => {
if (t.getHandlerFunction() === "closeFormNow") ScriptApp.deleteTrigger(t);
});
// Schedule: 48 hours from the moment you run this function
const runAt = new Date(Date.now() + 48 * 60 * 60 * 1000);
ScriptApp.newTrigger("closeFormNow")
.timeBased()
.at(runAt)
.create();
}
Option B: Close at an exact date & time (recommended for campaigns)
Set a fixed timestamp so your deadline is clear.
function scheduleCloseAtExactTime() {
const runAt = new Date("2025-12-20T18:00:00"); // change date/time
ScriptApp.newTrigger("closeFormNow")
.timeBased()
.at(runAt)
.create();
}
Tip: If your campaign ends at 6:00 PM, you can schedule 5:57 PM to stay safe.
Closed message template (copy/paste)
When you close the form, set a clear message so people know what happened.
Closed message:
Thanks for your interest. This form is now closed because the response window has ended.
FAQ
Can people still view the form after it’s closed?
Yes. People can still open the form link, but they’ll see that it’s not accepting responses (and your custom
closed message if you set one).
Which method should I use?
Method 1 if you just need quick control
Method 2 if you want a no-code schedule
Method 3 if you want automation without add-ons
Will the script close it exactly at the minute?
Time triggers are usually reliable, but they aren’t guaranteed to fire at the exact second.
If your deadline is strict, schedule a few minutes earlier.