Earth Engine Apps

Introduction

Earth Engine Apps are dynamic, publicly accessible user interfaces for Earth Engine analyses. With Apps, experts can use simple UI elements to leverage Earth Engine's data catalog and analytical power, for experts and non-experts alike to use.

Apps published from Earth Engine are publicly accessible to the world from the application-specific URL generated at time of publishing. No Earth Engine account is required to view or interact with a published App. Apps selected as featured by their creator are also available at a user-specific App Gallery (e.g., USERNAME.users.earthengine.app).

Build Your App

Earth Engine Apps can take advantage of most of the same functions used in the Code Editor, with a few exceptions. Additionally, we designed the User Interface API with Apps developers in mind. If you're new to the User Interface API, take a look at the UI API Overview.

Publishing Your App

To publish an App from the Code Editor, first load the script that you want to make into an App, and then head to the App Management panel, which you can access by clicking the apps grid icon above the script section in the Code Editor.

App Management Icon
App Management

Then click on the NEW APP button.

New App Button
App Management

When the resulting dialog opens, fill out the fields, adding an App Name, API Key, and specifying the App's source code. You can also provide a custom preview image for the app as well as a description. Click "Feature this app in your Apps Gallery" if you would like this App to appear on your public gallery of apps available at USERNAME.users.earthengine.app.

Publish App Dialog
App Management

When all fields are filled out and validated, the PUBLISH button will be enabled. Click the button to complete publishing.

Managing Your Apps

To manage an App from the Code Editor, head to the App Management panel, which you can access by clicking the apps grid icon above the script section in the Code Editor. From here you can update your App's configuration or delete the app.

Published Apps
App Management

FAQ

How do I remove an App from my Apps Gallery?
The "Feature this App" checkbox on the App configuration page controls whether or not an App appears on the Featured Apps page.
Is my Earth Engine code visible?
Yes. Although it's not clearly visible when your app is published, it's fairly easy for someone to view the JavaScript for your App by watching the network traffic to their web browser. In Chrome, for example, the JavaScript will be visible by looking at the Network panel of the Developer Tools.
What is App quota?
To prevent errant or resource-intensive scripts from negatively impacting the availability of the service, Earth Engine has App usage quotas on concurrent queries. This quota operates similarly to Earth Engine's per-user quota, except that the quota is tied to a Cloud Project, rather than a specific user.
Does each App I make have its own quota?
Quota is tied to the Cloud Project from which you generate an App's API key. If you generate multiple API keys from the same Cloud Project, they will all share the same usage quota.
Why is a Cloud billing account required? Will I be charged for my apps?
We use Google Cloud Platform for a variety of behind-the-scenes tasks. You will not be charged for creating an Earth Engine App. However, Google Cloud Storage is not free, so if you choose to export the results of your analyses to Google Cloud Storage, there may be an associated fee.
How can I understand my apps usage and quota better?

If the quota is exceeded, Earth Engine may return HTTP 429: Too Many Requests errors. Generally, these errors are handled by the Earth Engine client library, which wraps requests in exponential backoff, retrying the query until it succeeds. The Earth Engine client library will retry the request five times.

If your app becomes so popular that many users get quota exceeded errors, users will see a warning message, and Earth Engine may have to (temporarily) restrict access to the app.

To help avoid receiving 429 errors, you may want to enable caching for your application, such as by storing cacheable aggregate statistics as Earth Engine table assets, rather than computing them on the fly.

Send feedback about...

Google Earth Engine API