Google offers two billing plans for Google Cloud SQL: Packages and Per Use. Which plan you should select depends on how your database will be used, but as a rule of thumb it is more economical to use the package plan if your instance is used for more than 450 hours each month. More details about both plans are given below, along with pricing examples. You can also get a pricing estimate with the Google Cloud Platform Pricing Calculator.
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.
Packages Billing Plan
The following packages are available:
|Tier||RAM||Included Storage||Max Storage more info||Included I/O per Day||Charge per Day||Maximum Concurrent Connections|
Each instance tier comes with the RAM shown above, along with an appropriate amount of CPU. You can change an instance's tier at any time, with just a few seconds of downtime.
At the end of a billing period, you are charged based on the number of days during which the database exists (measured at US Pacific Time). Storage for backups created using the scheduled backup service is not part of the package limits and is not charged. The number of I/O requests to storage made by your database instance depends on your queries, workload and data set. Cloud SQL will cache data in memory to serve your queries efficiently and to minimize the number of I/O requests. Use of storage or I/O over the included quota is charged at the Per Use rate ($0.24 per GB per month for storage, $0.10 per Million of I/Os).
Storage is measured as the filespace used by the MySQL database. The size of all instances is limited to 250GB by default. Note that you only pay for the storage that you use, so you don’t need to reserve this storage in advance. If you require more storage, up to 500GB, contact firstname.lastname@example.org.
A newly created database uses about 270MB of space for system tables and InnoDB logs. If you create a per use instance but do not use it, you are still charged for the storage cost. For an example pricing calculation covering this scenario, see Pricing examples.
Per Use Billing Plan
The following resources are available, charged per use:
|D0 Database Instance (0.125GB RAM)||$0.025 per hour|
|D1 Database Instance (0.5GB RAM)||$0.10 per hour|
|D2 Database Instance (1GB RAM)||$0.19 per hour|
|D4 Database Instance (2GB RAM)||$0.29 per hour|
|D8 Database Instance (4GB RAM)||$0.58 per hour|
|D16 Database Instance (8GB RAM)||$1.16 per hour|
|D32 Database Instance (16GB RAM)||$2.31 per hour|
|1GB Storage||$0.24 per month|
|I/O||$0.10 per Million|
- The maximum concurrent connections allowed for each tier is the same as for the Packages Billing Plan.
- Use of database instances is charged for periods of continuous use, rounded up to the nearest hour (see the FAQ for more details).
- Storage is charged per GB in hourly units (whether the instance is used or not) measured as the largest number of bytes during that one hour period, rounded up to the nearest GB.
- Storage for backups created using the scheduled backup service is not charged.
- A newly created database uses a small amount of space (270MB) for system tables and InnoDB logs. This is included in the charged storage. For an example pricing calculation covering this scenario, see Pricing examples.
- The default and maximum storage for an instance are the same as the Packages Billing Plan (see Storage Size).
- You can change an instance's tier at any time, with just a few seconds of downtime.
- The number of I/O requests to storage made by your database instance depends on your queries, workload and data set. Cloud SQL will cache data in memory to serve your queries efficiently and to minimize the number of I/O. I/Os are rounded up to the nearest million. Queries that do not access storage are not charged for I/Os.
|External Outbound Traffic||$0.12 per GB|
Network use is charged for both packages and per use billing plans. Only outbound external traffic is charged, such as traffic to an admin or reporting tool or application hosted outside of the Google cloud. Network usage between Google App Engine applications, Google Compute Engine, or Google Cloud Storage and Cloud SQL are not charged.
Google Cloud SQL supports read replicas where the replica instances are other Cloud SQL instances or external MySQL instances.
- The only extra charge for replicating a Cloud SQL instance to another Cloud SQL instance is the cost of the replica instance.
- The only extra charge for replicating a Cloud SQL instance to external replicas is for the outbound network cost.
For more information about read replicas, see Configuring Replication with Google Cloud SQL.
Instance IPv4 addresses
|Instance IPv4 Address||$0.01 per hour idle|
The use of an external IPv4 address for instances on the per use billing plan is charged at $0.01 per hour for the time that the connection is idle. For example, if your per use instance is idle, on average, 50% of the time, then an external IP address for the instance would cost $43.83 for one year.
Each Google Cloud SQL instance has an IPv6 address that you can also use to connect to the instance. The IPv6 address is independent of whether you assign and use an IPv4 address. Use of the instance IPv6 address is not charged. For more information, see Configuring access control for IP connections.
Instances per Project
You can create up to 30 instances per project. Deleted instances do not count toward the 30 instance limit. You can request that the instance limit be raised for a project by contacting the email@example.com team.
You can use the Google Cloud Platform Pricing Calculator to get pricing estimates for your Cloud SQL usage scenarios.
If your Developers Console project has Google Cloud SQL enabled but you have no Cloud SQL instances, then your project incurs no Google Cloud SQL charges. Your project starts to incur Google Cloud SQL charges when you create an instance. You are charged for the storage cost whether you use the instance or not. For example, if you create a D0 instance and never connect to it, the cost for the instance on the packages billing plan is $10.80 per month (for a 30 day month).
Per use instance for trying out Cloud SQL
You can try out Google Cloud SQL for less than $1 per month. For example, suppose your usage while trying out Cloud SQL has the following characteristics:
- Uses a D0 instance, storing less than 1GB of data.
- Uses the instance for 5 hours every week with a low number of I/O operations.
You can estimate a charge of less than 1$ for one month for this scenario with the following selections in the Pricing Calculator:
- Usage equal to Part Time.
- Instance size equal to D0.
- Storage equal to 1 GB.
- I/O Operations equal to Light.
- Average hours per day each server is running equal to 5 hours.
- Average days per week each server is running equal to 1 day.
Per use instance used only during business hours
Now consider a scenario where you move beyond just trying out Google Cloud SQL. For example, suppose your application has the following characteristics:
- Uses a D2 instance, storing less than 10 GB of data.
- Uses the instance exclusively during business hours (i.e., 160 hours per month), with a high number of I/O operations during those hours.
You can estimate a charge of less than $40 for one month for this scenario with the following selections in the Pricing Calculator:
- Usage equal to Part Time.
- Instance size equal to D2.
- Storage equal to 10 GB.
- I/O Operations equal to Heavy.
- Average hours per day each server is running equal to 8 hour.
- Average days per week each server is running equal to 5 days.