Both Auth0 and Clerk offer free tiers. Auth0 provides "Free" while Clerk offers "Hobby".
A verdict here is not a fixed property of the vendor. A one-off pricing event demotes a vendor while its recorded date falls in the last 180 days and then lapses on its own, with nothing about the vendor having changed; a standing condition — a free tier withdrawn and not restored, a product retired — does not lapse with time. A badge carrying a date states the record it rests on; a badge with no date rests on no record in force.
Identity platform — 25K MAU (B2C), unlimited logins, social + database connections, Universal Login, 1 Enterprise Connection, 5 Organizations, 1 Custom Domain. No credit card required
Using the Free plan's custom domain requires a valid credit card on file for verification and fraud prevention. Auth0 does not charge it. (From auth0.com/docs/customize/custom-domains, read 2026-10-08.)
Drop-in auth with 50K monthly retained users free, unlimited apps
Pricing Change History
Auth0
deprecatedeffective 2028-01-31medium impact
Auth0 keeps running. Auth0 Rules reach end of life on January 31, 2028, when they stop running and are removed. They have been read-only since November 18, 2024, and tenants created from October 16, 2023 never had them. Auth0 says to move to Actions. Source ↗
deprecatedeffective 2027-04-30medium impact
Auth0 keeps running. Auth0 Hooks reach end of life on April 30, 2027, when they stop running and are removed. They have been read-only since November 18, 2024, and tenants created from October 16, 2023 never had them. Auth0 says to move to Actions. Source ↗
increasedeffective 2024-09-24high impact
Auth0's Free plan went from 7,500 to 25,000 monthly active users, with unlimited social and Okta connections, Organizations, Passwordless authentication and a custom domain. Auth0 announced it on 2024-09-24, available that day. Source ↗
Clerk
No recorded pricing changes for Clerk.
Watch Both Vendors for Pricing Changes
We do not push notifications. Every change we record is readable the moment it lands, and the JSON answer carries an ETag — send it back as If-None-Match and an unchanged answer costs one 304.