Set up your NGINX license token
A token activates your GetPageSpeed NGINX packages on any server you own. Pick the path that matches your situation.
Start or restart a subscription
No active GetPageSpeed subscription? Pick a plan and you'll be able to generate a token right after checkout.
- Plus, Pro, Ultra — from $10/mo
- Stripe or PayPal checkout
- License token available immediately after signup
Generate & install a token
Already subscribed? Sign in with your subscription ID, copy your token, and drop it onto each NGINX host.
- One token works on unlimited servers in your fleet
- 10-year validity — survives renewals
- Setup takes < 2 minutes — steps below
How license enforcement works today
After a subscription ends. For 30 days after the paid period, NGINX keeps serving traffic but appends a small visible notice to HTML pages. After that, the server is escalated to hard enforcement (HTTP 503 on every request), in line with our terms. If a 503 response body brought you here, that window has passed. Restoring your subscription — or installing a fresh token from a new subscription — removes the notice or lifts the block within minutes.
Install the token in 3 steps
-
Generate the token from your client area
Sign in at getpagespeed.com/client-area/ with your subscription ID (from your welcome email or payment confirmation). Open the License Token tab and click Generate Token. Copy the long
eyJ...string — it's shown only once.Lost the token? Regenerate — it's free and invalidates the previous one. Update every server that was using the old token.
-
Drop the token onto the server
Save the token to
/etc/nginx/license.jwtwith permissions readable by nginx workers:sudo tee /etc/nginx/license.jwt > /dev/null <<'EOF' PASTE_YOUR_TOKEN_HERE EOF sudo chmod 640 /etc/nginx/license.jwt sudo chown root:nginx /etc/nginx/license.jwt
-
Reload NGINX
sudo nginx -t && sudo systemctl reload nginx
Check the error log to confirm:
sudo grep gps_license /var/log/nginx/error.log
No output (or a
validated license tier=...notice) means the token is accepted.
Using a non-default path
By default the module looks for /etc/nginx/license.jwt. To use a different location, set it explicitly in the http block of nginx.conf:
http {
gps_license_token /path/to/your/license.jwt;
# ...
}
Or read from an environment variable:
http {
gps_license_token env:GPS_LICENSE_TOKEN;
# ...
}
Which builds include the license module?
The module is statically compiled into all recent GetPageSpeed NGINX builds on the platforms below. Older frozen binaries don't have it — they continue working as before.
| Platform | nginx-mod |
nginx (stable) |
|---|---|---|
| RHEL / CentOS / Alma / Rocky 7, 8, 9, 10 | Yes | Yes |
| Fedora 42, 43 | Yes | Yes |
| Amazon Linux 2, 2023 | Yes | Yes |
| SLES 16 | Yes | Yes |
| Ubuntu 22.04 (jammy), 24.04 (noble) | Yes | Yes |
| Debian 12 (bookworm) | Yes | Yes |
Frequently asked questions
My subscription was cancelled. Can I just reinstall the old token?
No. Revoked tokens are server-side blacklisted — reinstalling the same string won't bring access back. You need an active subscription first. Once that's in place, generate a fresh token from the client area.
I already have an IP-based subscription. Do I need to do anything?
Your subscription is confirmed by your server's IP and everything continues to work. The only change is a startup warning in your NGINX error log. The warning is currently cosmetic and does not affect traffic, but enforcement may become stricter in future releases. Installing a token now takes a minute and silences the warning.
Do I need to renew or regenerate my token when my subscription renews?
No. Tokens are long-lived and survive subscription renewals. You generate a token once and it stays valid. If a subscription is cancelled, the token is revoked server-side — you don't need to remove the file from your server.
Can I use one token on multiple servers?
Yes. The token is tied to your subscription, not to a specific server IP. You can copy the same /etc/nginx/license.jwt file to every server in your fleet. This is the main advantage of the token system over IP-based licensing — no need to register each server's IP individually.
What happens if my subscription is cancelled?
The token is revoked server-side. Currently, NGINX continues to serve traffic with a warning. In future releases, enforcement may become stricter for revoked or missing tokens. To restore access, start a new subscription and generate a fresh token.
Does the module phone home?
The module sends periodic usage telemetry (worker count, request count, NGINX version, uptime) to getpagespeed.com. This data helps us understand how our packages are used. No request content, URLs, or user data is transmitted.
I regenerated my token. Do I need to update all servers?
Yes. Regenerating a token invalidates the previous one. Update /etc/nginx/license.jwt on each server and reload nginx.
Why was the license module added?
IP-based licensing requires each server to have a registered IP, which doesn't scale for subscribers running many servers or dynamic infrastructure. The token system is more flexible: one token works everywhere, supports offline / air-gapped environments via Ultra-tier repo sync, and gives us better visibility into how packages are used so we can prioritize development.
Still stuck?
Email info@getpagespeed.com with your subscription ID and the exact error from your NGINX log, and we'll get you unstuck.