This document explains Workflows pricing details. You can also use the Google Cloud Pricing Calculator to estimate the cost of using Workflows.
If you pay in a currency other than USD, the prices listed in your currency on Cloud Platform SKUs apply.
Workflows pricing is calculated monthly based on the number of workflow steps executed.
The following count toward the total of workflow steps executed:
- Any step that executes successfully.
- Any step that fails during execution.
- Any step that is retried during a workflow execution. Each retry attempt counts as a step execution.
Internal and external steps
Steps can be classified as internal or external. Internal and external steps are priced differently:
Steps that occur inside Google Cloud when you execute your workflow.
Types of internal steps include:
Steps that make an external HTTP request to resources outside of Google Cloud, or wait for HTTP callbacks.
Types of external steps include:
You incur charges for increments of 1,000 internal steps or external steps. For an example of how this works, see this pricing example.
Pricing for subworkflows is calculated using the same pricing guidelines as a regular workflow. As a result, calling a subworkflow generates costs equal to the cost of all of the subworkflow's steps plus the cost of the step that calls the subworkflow.
As part of the Google Cloud Free Tier, Workflows provides resources that are free to use up to specific limits. These usage limits are available both during and after the free trial period. If you are no longer in the free trial period, you incur charges beyond these Always Free limits according to the pricing table.
|Resource||Monthly free usage limit|
Your monthly cost comes from the total number of internal and external steps performed in all of your workflow executions. The billing calculation subtracts the free usage from each total, counts the number of 1,000 increments that you have fully or partially used for each category, multiplies each count by the associated unit cost, then adds those results together to get the total charges.
For example, if your workflow executions use a total of 6,500 internal steps and 3,999 external steps in one month:
|Total internal steps that you used: 6,500||
Internal steps that the free tier covers: 5,000
Additional internal steps: 1,500
|Total external steps that you used: 3,999||
External steps that the free tier covers: 2,000
Additional external steps: 1,999
|Total charges for the month: $0.02 + $0.05||= $0.07|
As demonstrated by the preceding example, the cost to run a workflow is minimal. However, for high volume usage, apply the following guidelines to optimize usage and decrease cost:
Instead of using custom domains, ensure that any calls to Google Cloud services use
*.run.appso that you are billed for internal and not external steps.
Apply a custom retry policy that balances your latency and reliability needs with costs. More frequent retries lower latency and increase reliability, but can also increase costs.
When using connectors that wait for long-running operations, set a custom polling policy that optimizes latency for cost. For example, if you expect an operation to take over an hour, you might want a policy that initially polls after one minute in case of an immediate failure, and then every 15 minutes after that.
Combine assignments into one step.
Avoid excessive use of
sys.logsteps. Consider using call logging instead.
- Read the Workflows documentation.
- Get started with Workflows.
- Try the Pricing calculator.
- Learn about Workflows solutions and use cases.