Each App Engine application can consume a fixed amount of computing resources for free, defined by a set of quotas. You can pay for additional resources by enabling billing and linking a credit card or bank account to your application. Your application will be billed for all resource usage above the free quotas. To control your application costs, you can set a daily budget.
When charging in local currency, Google will convert the prices listed into applicable local currency pursuant to the conversion rates published by leading financial institutions.
Resource billing rates
|Resource||Unit||Unit cost (in US $)|
|Outgoing Network Traffic||Gigabytes||$0.12|
|Incoming Network Traffic||Gigabytes||Free|
|Datastore Storage||Gigabytes per month||$0.18|
|Blobstore, Logs, and Task Queue Stored Data||Gigabytes per month||$0.026|
|Dedicated Memcache||Gigabytes per hour||$0.06|
|SSL Virtual IPs** (VIPs)||Virtual IP per month||$39.00|
|Sending Email, Shared Memcache, Pagespeed, Cron, APIs (URLFetch, Task Queues, Image, Sockets, Files, Users, and Channel)||No Additional Charge|
* Frontend and backend instances cost the same. Price may vary based on the
performance settings associated with a module.
** SNI SSL certificate slots are offered for no additional charge.
Note: If your free app exceeds the free quota for some resource needed to initiate a request, such as the bandwidth quota or instance hours quota, users of the app will get a server error, such as a 503 error. For all other services, exceeding quota from a free app will generate a quota exception that your app can handle gracefully by showing a message to the users. See When a Resource is Depleted for more details.
Note: Please note that there is an initial start up cost of 15 minute instance time for each instance start up.
Costs for Datastore Calls
Datastore operations are billed as follows:
|Read / Write||$0.06 per 100,000 operations|
Calls to the datastore API result in the following billable operations. Small datastore operations include calls to allocate datastore ids or keys-only queries. These operations are free. This table shows how calls map to datastore operations:
|API Call||Datastore Operations|
|Entity Get (per entity)||1 read|
|New Entity Put (per entity, regardless of entity size)||2 writes + 2 writes per indexed property value + 1 write per composite index value|
|Existing Entity Put (per entity)||1 write + 4 writes per modified indexed property value + 2 writes per modified composite index value|
|Entity Delete (per entity)||2 writes + 2 writes per indexed property value + 1 write per composite index value|
|Query*||1 read + 1 read per entity retrieved|
|Projection Query||1 read|
|Projection Query with "Distinct" option||1 read + 1 read per entity retrieved|
* Queries that specify an offset are charged for the number of results that are skipped in addition to those that are returned.
Costs for Search
|Total Storage (Documents and Indexes)||$0.18 per GB per month*|
|Queries||$0.50 per 10K queries|
|Indexing Searchable Documents||$2.00 per GB|
* Storage is at datastore rates.
You must be a project owner to be a billing administrator and complete basic billing tasks. For more information, see the support help page on how to Manage billing administrators.
To use computing resources above the free quotas, add a billing account and enable billing for your project in the Google Developers Console. For further instructions, see Enabling billing.
If you already have a billing account when you create a project, billing is enabled for that project by default. If you have more than one billing account when you create a project, you must select an account to associate with your project. If you don't have a billing account when you create a project, then you must add a billing account and enable billing for that project to use resources beyond the free quotas.
If you disable an application, you should also disable billing for that application, as the app can still be charged for fixed billing costs, like datastore storage.
After you enable billing, the daily budget is set to unlimited by default. You may want to set a daily budget so there is a limit to the amount you can be charged.
The daily budget is the maximum resource cost you want to pay for a project for App Engine resources. You may still be charged for usage of other Google Cloud Platform resources beyond the daily budget. If you have multiple projects, you may want to set a daily budget for each project.
The daily budget should be large enough to be able to handle spikes in resource usage. When an application exceeds its daily budget, any operation whose free quota has been exhausted fails.
By default, the daily budget for a project is unlimited. To limit application costs, set a daily budget.
To view your app's charges, go to the Google Developers Console. In the top-right, click Settings, select Billing accounts, then select the account. Ensure you are on the History tab.
Only billing administrators can view the transaction history. No paper invoices are sent to the billing contact.
The transaction history shows all account activity related to resource charges and payments. The report uses US Pacific timezone.
Daily and monthly charges
Charges are posted daily and monthly:
- Daily: Every day you are charged for the resources you actually use. Usage up to the free quota limits is included in the usage total, but not in the billable amount. Usage above the free quota is charged at the regular rates.
- Monthly: At the beginning of each month all daily charges for the previous month are summed, applicable taxes are computed, and the total charges are debited from the payment method that is linked to the app.
Some countries tax App Engine fees. If taxes apply in your country of residence, your bill will include any applicable taxes. Note that the daily budget does not include taxes. Taxes are added to your charges after daily spend has been calculated, so the final charge to your account may be larger than the daily budget amount. To see any taxes in your bill, in the top-right of the Google Developers Console, click Settings, select Billing accounts, then select the account. On the History tab, you can view the Transaction History.
You can view your app's current billing status in the App Engine dashboard in the Developers Console. If a payment fails, the app's account is delinquent and enters a grace period status. You have until the end of the grace period to pay the outstanding balance. During the grace period, the app will continue to run with its budget constraints. If payment is not received, your quotas may be reverted to the default levels.
To clear the outstanding charges you can go to the Transaction History page where you can click Make a Payment. You may need to go to the Billing Settings page first, where you can add another payment source or correct a problem with an existing account, such as an expired card. If payment succeeds, the billing status will change to Billing Enabled.
Creating or changing a budget
To set a budget:
- Go to the App Engine Settings page for your project in the Google Developers Console.
- In the Application Settings tab, click Edit.
- Specify a daily budget amount and click Save.
Changing the maximum daily budget can be tricky. When you increase the maximum daily budget, the new limit takes effect immediately so that an application that has been failing because it is over budget will work again. However, if you lower the daily maximum, the change will take effect immediately only if the current daily usage is below the old maximum. Otherwise, the new maximum takes effect the next day.
The billing section includes two log pages:
This page can be viewed by any application administrator. It shows daily resource usage reports along with details of any associated charges. Billing events, such as budget modifications and billed administrator changes also appear here. These reports can be viewed online, printed, or downloaded as a comma-separated values (CSV) file.
Frontend and backend instance hours are not enumerated by instance class name. They appear as a single instance hours total and the corresponding hourly usage and cost is computed as multiple of the base class (F1 and B1). For example, one hour of F4 usage is billed as four instance hours at the F1 rate.
This page can only be viewed by billing administrators. It shows all account activity related to resource charges and payments. The report uses US Pacific timezone.