JWT Auth ProWORDPRESS · REST API Get it now
Departures Tokens issued
from wp-admin

Production-grade JWT Auth for WordPress developers.

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.

Select a flight to cancel it. That is a revoked token.

  • 60,000+ active installs of the free plugin
  • 14-day compatibility guarantee
  • Built on our free JWT plugin
Check-in desks

Two desks. Same destination. Very different flight.

Both add JWT to WordPress. The difference is what happens after the token is issued. The free plugin generates tokens and walks away. Pro tracks every token, logs every access, and lets you revoke instantly.

Stay on free if…

you only need to generate and validate tokens for a small project.

Upgrade to Pro if…

you need to inspect, refresh, revoke, audit, and rate-limit tokens in production, from the WP admin, without custom code.

Feature EconomyFreeWP.org · Free forever FirstProstarts at $59.99/yr
Core Authentication
Basic JWT AuthenticationAdd login via JSON Web TokensYesYes
Token GenerationIssue access tokens on successful authYesYes
Token ValidationVerify token integrity on each requestYesYes
Token Management
Token RefreshSecure refresh with 64-char tokens and replay attack preventionNoYes
Instant RevocationRevoke compromised sessions immediatelyNoYes
Token DashboardSee every active token, owner, expiry, and last activityNoYes
Auto-Revoke on Password ChangeAll sessions killed when a password is compromisedNoYes
Auto-Revoke on Email/Role ChangeSessions invalidated on identity or permission changesNoYes
Visibility & Security
Analytics DashboardSuccess/failure rates, response times, 7d/30d/90d historyNoYes
GeoIP TrackingCountry detection from IP via MaxMind GeoLite2NoYes
Rate LimitingIP-based, 60 req/min default, configurable, HTTP 429 responsesNoYes
Security HeadersAutomatic HSTS, X-Frame-Options, X-Content-Type-Options, XSS-ProtectionNoYes
Token Family TrackingDetects refresh token replay attacks by tracking token lineageNoYes
Configuration & Compliance
All Settings via WordPress UINo wp-config.php editing requiredNoYes
Configurable Signing AlgorithmsHS256, RS256, ES256, EdDSA and more, from the UINoYes
IP AnonymizationGDPR-compliant option to anonymize stored IP addressesNoYes
Data Retention PoliciesConfigurable 1–365 day retention for analytics and token dataNoYes
Support & Developer Tools
Priority SupportDirect help from the developerNoYes
Detailed DocumentationGuides, examples, best practicesNoYes
30+ Developer Hooks & FiltersActions and filters for deep integrationNoYes
UpgradesAll directions

Six reasons developers move from free to Pro.

Each is something the free plugin doesn't ship with, and something you'd otherwise build, debug, and maintain yourself.

“I need refresh tokens.”

Keep users logged in without storing passwords. Secure 64-character refresh tokens with family tracking detect replay attacks automatically.

Token Refresh + Replay Detection

“I need to revoke any token instantly.”

Revoke any token in a single click. Stop a compromised session from hitting your API before the next request lands.

Instant Revocation

“I need automatic protection on credential changes.”

Tokens auto-revoke when a user changes their password, email, or role, so one leaked credential never leaves the API wide open.

Auto-Revoke Rules

“I need to see every token at a glance.”

Every active token in one dashboard: owner, expiry, last activity, country of origin. No more guessing which app still holds a session.

Token Dashboard + GeoIP

“I need API analytics and rate limiting.”

Success and failure rates, response times, 7/30/90-day windows. Built-in IP rate limiting and automatic security headers on every response.

Analytics + Rate Limiting

“I need a UI instead of custom code.”

Drop 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 Admin
AirsideControl tower

Not just authentication. Complete token control.

Gate agent terminal

Token Dashboard

Every active token in one view: who owns it, when it was issued, when it expires, last activity. Revoke with one click. This screen and the departure board up top share the same tokens.

JWT Auth Pro › Tokens
UserLast usedStatusAction
Security checkpoint

Automatic Revocation Policies

Tokens auto-revoke on password change, email change, or role change. One compromised account doesn't mean open API access.

Revoke on password change
Revoke on email change
Revoke on role change

Each rule can be toggled independently and customized with filters.

Customs

Custom Claims

Something to declare? Add custom claims to JWT tokens using WordPress filters.

Claims declarationfunctions.php
Hook: jwt_auth_token_before_sign
Goods declared: customer_type, loyalty_points, preferred_currency
add_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);

Baggage trace

Security Audit Trail

Complete compliance logging with full context, attached to every token.

JWTTOKEN
TRACE TAG
Created
June 13, 2025 3:08 am
IP
110.11.194.83
User agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) Chrome/124
Hash
bb414972b6df2f5a902...
User
John Doe (ID 1)
Last used
June 13, 2025 3:08 am
Revoked
June 13, 2025 3:08 am
Taxiway limit

Rate Limiting & Security Headers

60

60 req/minIP-based and configurable. Over the limit, clients get HTTP 429.

  • HSTS
  • X-Frame-Options
  • X-Content-Type-Options
  • XSS-Protection

Sent automatically. No nginx config required.

Traffic

Usage Analytics

Authentication events, success and failure rates, response times, geographic distribution.

SuccessFailureSample chart
Flight settings

Admin Configuration Interface

  • JWT token expiration 7 DAYS
  • Refresh token expiration 30 DAYS
  • Enable CORS ON
  • Analytics retention 90 DAYS
  • Anonymize IP ON

All from wp-admin. The secret key in wp-config.php is the only code.

Runways

Three endpoints. Any client.

Works with React, Vue, Flutter, mobile apps, or any client.

Generate Token

Authenticate users and issue tokens with a single API call.

POST /wp-json/jwt-auth/v1/token

Validate Token

Signature check, claims validation, expiration status.

POST /wp-json/jwt-auth/v1/token/validate

Refresh Token

Auto renewal, lifecycle management, session continuity.

POST /wp-json/jwt-auth/v1/token/refresh

Signing algorithms, picked in the UI:HS256/384/512RS256/384/512ES256/384/512PS256/384/512EdDSA60 features total.

Gates 1–6

From purchase to production in six gates.

  1. Gate

    Install Pro

    Download the Pro zip from your account, upload through Plugins → Add New.

  2. Gate

    Activate your license

    Paste the key once. Local and staging installs don't count against the quota.

  3. Gate

    Configure JWT

    Drop your secret key into wp-config.php once; pick signing algorithm, token lifetime, CORS, retention from the admin UI.

  4. Gate

    Enable Pro features

    Refresh tokens, auto-revoke rules, analytics, rate limiting. Each is a single checkbox.

  5. Gate

    Verify in the token dashboard

    Hit your API; watch tokens appear live with owner, expiry, IP, country.

  6. Gate

    14-day compatibility safety net

    Support reaches the plugin author directly. If Pro can't be made to work on your stack, you get a refund.

Most teams have Pro running before they refill their coffee.

ArrivalsReviews from WP.org

60,000+ sites trust our authentication.

  • Steffi

    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.

    Landed
  • Martin Šenkeřík

    High quality plugin. Delivers what is promised. And that's quite comprehensive list of features. Recommended.

    Landed
  • MadeByCaliper

    Easy, stable, powerful, extensible. Allowed me to get up and running with a Vue.js frontend authentication flow within minutes. Really great documentation too!

    Landed
  • softradeweb

    Very useful plugin. I'm using this plugin since some months and it works perfectly, a simple way to authenticate from ext. apps

    Landed
  • WildPress

    Exactly as described, very easy to use and clear documentation. Thank you

    Landed
  • Mwale Kalenga

    Great plugin! I've been using the plugin for over year, it's very good and user friendly!

    Landed
  • graficowalab

    Simply perfect! I integrated it with my Flutter app, and it works flawlessly.

    Landed
  • xero2112

    Perfect. Does exactly what it states! Have been using this plugin for about a year now and haven't had any problems!

    Landed
TicketingEvery seat is First

Simple, site-based pricing. Every plan is full Pro.

One payment, no upsells inside the plugin. Local and staging installs are free. 14-day compatibility guarantee on every plan.

JWT Auth ProBoarding pass
PlanProfessional Single Site
FREEPRO
Sites1 site
ClassFull Pro
Local & stagingFree
Guarantee14 days
Fare
$59.99
per year
Get Single Site
JWT Auth ProBoarding pass
PlanProfessional Team
FREEPRO
SitesUp to 5 sites
ClassFull Pro
Local & stagingFree
Guarantee14 days
Fare
$149.99
per year
Get Team
JWT Auth ProBoarding pass
PlanProfessional Agency
FREEPRO
SitesUp to 20 sites
ClassFull Pro
ExtraWhite-labeling
Guarantee14 days
Fare
$339.99
per year
Get Agency
Information desk

Questions before boarding.

What does Pro do that the free plugin does not?

The 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.

Does this plugin work out of the box?

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.

What happens if Pro does not work on my setup?

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).

Does a local install count as a site for my license?

No. Local and staging environments do not count against your quota.

Do you offer lifetime access?

Yes. Every plan has a yearly and a lifetime option; lifetime is a one-time payment.

Do you offer a free trial?

No traditional trial, but the 14-day compatibility guarantee covers the only risk that matters: whether Pro runs on your stack.

What are the system requirements?

PHP 8.1+, WordPress 5.0+ with the REST API enabled, HTTP Authorization header enabled on the server.

How does token refresh work?

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.

What happens to tokens when a user changes password, email, or role?

By default all of that user's tokens are revoked. Each rule can be toggled independently and customized with filters.

What signing algorithms are supported?

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.

The free plugin generates tokens and walks away. Pro tracks every one.

Token dashboard, refresh tokens, instant revocation, audit logs, and rate limiting, on top of the plugin you already run. Backed by a 14-day compatibility guarantee.