Professional Single Site
1 siteGet Single Site
JWT Auth Pro · for the WordPress REST API
JWT Auth Pro adds the missing control layer to the free JWT plugin you’re already running: a token dashboard, refresh tokens, instant revocation, audit logs, and rate limiting, managed from wp-admin, without rebuilding your existing auth flow.
Built on our free JWT plugin — trusted by 60,000+ active installs and backed by a 14-day compatibility guarantee.
Both add JWT to WordPress. The difference is what happens after the token is issued.
| A | B | C | |
|---|---|---|---|
| FeatureStay on free to generate and validate tokens for a small project. Upgrade to inspect, refresh, revoke, audit, and rate-limit tokens in production — from the WP admin, without custom code. | FreeWP.org Free forever | Prostarts at $59.99/yr | |
| Core Authentication | |||
| Basic JWT Authentication — add login via JSON Web Tokens | Yes | Yes | |
| Token Generation — issue access tokens on successful auth | Yes | Yes | |
| Token Validation — verify token integrity on each request | Yes | Yes | |
| Token Management | |||
| Token Refresh — secure refresh with 64-char tokens and replay attack prevention | No | Yes | |
| Instant Revocation — revoke compromised sessions immediately | No | Yes | |
| Token Dashboard — see every active token, owner, expiry, and last activity | No | Yes | |
| Auto-Revoke on Password Change — all sessions killed when a password is compromised | No | Yes | |
| Auto-Revoke on Email/Role Change — sessions invalidated on identity or permission changes | No | Yes | |
| Visibility & Security | |||
| Analytics Dashboard — success/failure rates, response times, 7d/30d/90d history | No | Yes | |
| GeoIP Tracking — country detection from IP via MaxMind GeoLite2 | No | Yes | |
| Rate Limiting — IP-based, 60 req/min default, configurable, HTTP 429 responses | No | Yes | |
| Security Headers — automatic HSTS, X-Frame-Options, X-Content-Type-Options, XSS-Protection | No | Yes | |
| Token Family Tracking — detects refresh token replay attacks by tracking token lineage | No | Yes | |
| Configuration & Compliance | |||
| All Settings via WordPress UI — no wp-config.php editing required | No | Yes | |
| Configurable Signing Algorithms — HS256, RS256, ES256, EdDSA and more, from the UI | No | Yes | |
| IP Anonymization — GDPR-compliant option to anonymize stored IP addresses | No | Yes | |
| Data Retention Policies — configurable 1–365 day retention for analytics and token data | No | Yes | |
| Support & Developer Tools | |||
| Priority Support — direct help from the developer | No | Yes | |
| Detailed Documentation — guides, examples, best practices | No | Yes | |
| 30+ Developer Hooks & Filters — actions and filters for deep integration | No | Yes | |
Keep users logged in without storing passwords. Secure 64-character refresh tokens with family tracking detect replay attacks automatically.
Token Refresh + Replay DetectionRevoke any token in a single click. Stop a compromised session from hitting your API before the next request lands.
Instant RevocationTokens auto-revoke when a user changes their password, email, or role — so one leaked credential never leaves the API wide open.
Auto-Revoke RulesEvery active token in one dashboard — owner, expiry, last activity, country of origin. No more guessing which app still holds a session.
Token Dashboard + GeoIPSuccess and failure rates, response times, 7/30/90-day windows. Built-in IP rate limiting and automatic security headers on every response.
Analytics + Rate LimitingDrop your secret key into wp-config.php once. Everything else — signing algorithm, token lifetime, CORS, retention policy — lives in WordPress admin instead of code.
Configuration via WP Adminadd_filter('jwt_auth_token_before_sign', function($token, $user) {
$token['customer_type'] = get_user_meta($user->ID, 'customer_type', true);
$token['loyalty_points'] = get_user_meta($user->ID, 'loyalty_points', true);
$token['preferred_currency'] = get_user_meta($user->ID, 'currency', true);
return $token;
}, 10, 2);
Add custom claims to JWT tokens using WordPress filters. Not just authentication — complete token control.
Admin Configuration Interface: aside from the secret key, every setting lives in wp-admin.
One compromised account doesn’t mean open API access.
Complete compliance logging with full context.
Authentication events, success and failure rates, response times, geographic distribution; 7-day, 30-day, 90-day windows. The drawing above is sample data — pick a fill pattern.
Works with React, Vue, Flutter, mobile apps, or any client.
POST /wp-json/jwt-auth/v1/tokenAuthenticate users and issue tokens with a single API call.
POST /wp-json/jwt-auth/v1/token/validateSignature check, claims validation, expiration status.
POST /wp-json/jwt-auth/v1/token/refreshAuto renewal, lifecycle management, session continuity.
IP-based and configurable, with HTTP 429 beyond the limit. Automatic security headers on every response. No nginx config required.
Signing algorithms: HS256/384/512, RS256/384/512, ES256/384/512, PS256/384/512, EdDSA.
After purchase · Step 1 of 6
Download the Pro zip from your account, upload through Plugins → Add New.
Step 2 of 6
Paste the key once. Local and staging installs don’t count against the quota.
Step 3 of 6
Drop your secret key into wp-config.php once; pick signing algorithm, token lifetime, CORS, retention from the admin UI.
Step 4 of 6
Refresh tokens, auto-revoke rules, analytics, rate limiting. Each is a single checkbox.
Step 5 of 6
Hit your API; watch tokens appear live with owner, expiry, IP, country.
Step 6 of 6
Support reaches the plugin author directly. If Pro can’t be made to work on your stack, you get a refund.
Perfect to use for API
JWT is brillant and it works out of the box. Further to this is it really stable and does it job.
High quality plugin
Delivers what is promised. And that’s quite comprehensive list of features. Recommended.
Easy, stable, powerful, extensible
Allowed me to get up and running with a Vue.js frontend authentication flow within minutes. Really great documentation too!
Very useful plugin
I’m using this plugin since some months and it works perfectly, a simple way to authenticate from ext. apps
Exactly as described, very easy to use and clear documentation. Thank you
Great plugin!
I’ve been using the plugin for over year, it’s very good and user friendly!
Simply perfect!
I integrated it with my Flutter app, and it works flawlessly.
Perfect
Does exactly what it states! Have been using this plugin for about a year now and haven’t had any problems!
Get Single Site
Get Team
Adds white-labeling.
Get AgencyThe free plugin issues and validates JWT tokens — that is it. Pro adds the production layer most teams build by hand: token dashboard, refresh tokens with replay-attack detection, instant and automatic revocation, analytics over 7/30/90 days, IP-based rate limiting, automatic security headers, configurable signing algorithms, GDPR-friendly data retention. Aside from the secret key in wp-config.php, every Pro setting is managed from the WordPress admin UI.
Yes. Pro adds a professional JWT layer on top of the WP REST API: create, validate, refresh, revoke tokens so users can authenticate from mobile apps, SPAs, or any external system. You still implement the calling logic in those clients.
Every plan includes a 14-day compatibility guarantee. Open a support ticket and we work the issue with you directly. If Pro genuinely cannot run on your stack, you get a refund (processor fees, typically 3–5%, are deducted).
No. Local and staging environments do not count against your quota.
Yes. Every plan has a yearly and a lifetime option; lifetime is a one-time payment.
No traditional trial, but the 14-day compatibility guarantee covers the only risk that matters: whether Pro runs on your stack.
PHP 8.1+, WordPress 5.0+ with the REST API enabled, HTTP Authorization header enabled on the server.
On login the client gets an access token (default 7 days) and a refresh token (default 30 days). When the access token expires the client exchanges the refresh token for a new one without re-prompting the user. Refresh tokens are 64 characters, tracked as a family, and detect replay attacks automatically.
By default all of that user’s tokens are revoked. Each rule can be toggled independently and customized with filters.
HS256/384/512, RS256/384/512, ES256/384/512, PS256/384/512, EdDSA; chosen in the settings UI or via the jwt_auth_algorithm filter.
Pro tracks every token, logs every access, and lets you revoke instantly — with a 14-day compatibility guarantee on every plan.