Google Apps Script

Do more. With Google.

With Apps Script, you can create add-ons for Google Sheets, Docs, or Forms,
automate your workflow, integrate with external APIs, and more.

Try a 5-minute quickstart

Add-on for
Google Docs

NEW! Create a Docs add-on that transforms selected text into other languages with Google Translate.

Start building

Macros, menus, and
custom functions

Tailor spreadsheet functions to your needs and build reports with a custom menu in Google Sheets.

Start building

Managing responses
for Google Forms

Email Calendar invites and a personalized Google Doc to every user who responds to a form.

Start building

Build an add-on for Google Sheets, Docs, or Forms

NEW! Apps Script makes it easy to create and publish add-ons in an online store for Google Sheets and Docs.
(The add-on store for Forms is coming soon.) There’s no better way to distribute scripts to large number of users, whether you want to ship your code to the whole world or keep it private to the users in your Google Apps domain.

11 Google apps, 1 platform in the cloud

Increase the power of your favorite Google apps — like Calendar, Docs, Drive, Gmail, and Sheets.
Apps Script lets you do more with Google. All on a JavaScript platform in the cloud.

A living, breathing platform (well, metaphorically)

We add new features to Apps Script almost every week. Between our lively community of developers
and video updates on Google Developers Live, you’ll never feel like you’re alone.

April 24, 2014

  • In the new version of Google Sheets, the Undo command can now revert changes made by a script. This was already true in Docs, Forms, and the older version of Sheets.
  • The following fixes were applied:
    • Issue 3891: In the new version of Sheets, custom functions now recalculate correctly if more than 100 cells are passed as an argument.
    • Issue 3859: In the new version of Sheets, setting data-validation criteria for a cell that already contains a value no longer corrupts the spreadsheet.
    • Issue 3773: In the new version of Sheets, the Browser methods inputBox and msgBox now treat newline characters (\n) the same way that the older version of Sheets did. Specifically, \n produces a space, but \\n (double-escaped) produces a line break.
    • Issue 2335: The fact that the ID of a GmailThread varies based on the messages it contains is now documented.
    • Issue 2288: The fact that a Google Site or page of a site cannot have more than 500 child pages is now documented.
    • Issue 1427: The fact that the method getAs replaces the part of a filename that follows the last period with the new file type's extension is now documented.
Earlier release notes »

Join us on Google Developers Live

Catch the Apps Script team on Google Developers Live for an expert take on new features. Check the schedule for upcoming episodes or catch up on older shows.


Join the Google+ community


For support, ask Stack Overflow


Find an issue? Let us know!


Announcements and case studies

Authentication required

You need to be signed in with Google+ to do that.

Signing you in...

Google Developers needs your permission to do that.