Traffic Policy Unit (TPU) Pricing
Traffic Processing Units (TPUs) are ngrok's usage-based metric for measuring the work your traffic policies perform. Because requests can include any mix of expressions, macros, and actions—often applied only to a subset of traffic—charging a flat rate per request or connection would usually result in overcharging. Instead, ngrok calculates TPUs dynamically for each request, based only on the parts of the traffic policy that were actually executed.
TPUs are sold in bundles of 100,000 for $1 and are charged as your policies execute.
TPU pricing breakdown
- Actions: Define what happens when a traffic policy rule matches (such as adding headers, denying a request, or forwarding traffic).
- Macros: Macros can be used within the Traffic Policy engine to simplify traffic management and dynamic configuration.
- Variables: Metadata about connections or requests that you can use in expressions or actions (such as the client IP or headers).
Actions
Name | TPU Cost |
---|---|
add-headers | Free |
basic-auth | Free |
circuit-breaker | 10 TPUs |
compress-response | 10 TPUs |
custom-response | Free |
deny | Free |
forward-internal | Free |
forward-external | 10 TPUs |
http-request | 1 TPU |
jwt-validation | 10 TPUs |
log | Free |
oauth | Free |
oidc | Free |
owasp-crs-request | 10 TPUs |
owasp-crs-response | 10 TPUs |
rate-limit | 1 TPU |
redirect | 10 TPUs |
remove-headers | 1 TPU |
restrict-ips | 10 TPUs |
saml | Free |
set-vars | Free |
terminate-tls | 100 TPUs |
url-rewrite | 10 TPUs |
verify-webhook | 1 TPU |
Macros
Variables
Traffic Policy Unit (TPU) discounts at scale
The Pay-as-you-go plan provides discounts on TPUs for large scale deployments so you always get the best price as you grow. Discounted pricing is as follows:
Count | TPU Cost |
---|---|
0+ | $1/100k |
1M+ | $.75/100k |
10M+ | $.55/100k |
100M+ | $0.35/100k |
1B+ | $0.25/100k |