Clerk vs NextAuth.js
Clerk is a hosted authentication and user management service with prebuilt UI components, billed by monthly retained users after a free tier. NextAuth.js is a free open source authentication library that was renamed Auth.js, lost its main maintainer in January 2025, and has been stewarded by Better Auth since September 2025, which recommends new projects use Better Auth instead. Choose Clerk for a managed, actively supported auth service, and treat NextAuth.js as a legacy option for existing projects rather than a fresh pick.
Facts checked on against the official sources listed at the end. Usage numbers update daily.
Best for
Teams that want managed auth, prebuilt UI and B2B organizations out of the box
Free plan. Paid from $25 a month, or $20 a month billed yearly (Pro).
Best for
Existing projects already running on the library that need only security patches
Free plan.
Clerk vs NextAuth.js at a glance
| Compared on | Clerk | NextAuth.js |
|---|---|---|
| Delivery model | Hosted service; Clerk stores and manages your users | Library you run inside your own app, with your own database |
| Prebuilt sign-in UI | Yes, drop-in components for sign-up, sign-in and user profiles | No; you build your own sign-in pages |
| Maintenance status | Actively developed commercial product | Superseded; security patches only, new projects pointed to Better Auth |
| B2B organizations | Built in, with an add-on for larger organization counts | Not included; you would build it yourself |
| Framework coverage | Next.js, React, Expo, Astro, Nuxt, Vue, Express, Go, Rails, iOS and Android | Next.js, React, SvelteKit, Express and Qwik |
| Who owns the user data | Stored in Clerk's hosted service | Stored in your own database through adapters |
| Open source | No, Proprietary service; client SDKs published on GitHub | Yes, ISC |
| Free plan | Yes: Hobby plan with 50,000 monthly retained users per app and up to 3 dashboard seats | Yes, NextAuth.js / Auth.js is completely free |
| Paid plans from | $25 a month, or $20 a month billed yearly (Pro) | Not listed |
| Made by | Clerk, Inc. | Auth.js open source project (stewarded by Better Auth) |
| Launched | 2019 | Not listed |
What's the difference between Clerk and NextAuth.js?
Managed service vs self-run library
Clerk runs authentication for you and hosts the user store, so there is nothing to deploy or patch. NextAuth.js runs inside your application and writes to your own database, which gives you control but also makes you responsible for sessions, storage and upgrades.
One is maintained, one is winding down
Clerk is an actively developed product. NextAuth.js was renamed Auth.js during a long v5 beta that never reached a stable release, its main maintainer left in January 2025, and Better Auth took over stewardship on 22 September 2025 to provide security patches while recommending Better Auth for new projects.
Prebuilt UI and enterprise features
Clerk ships ready-made sign-in and profile components plus organizations, MFA and passkeys on paid plans. NextAuth.js handles OAuth providers, email links, credentials and sessions, but leaves the interface and any organization model to you.
Cost shape
NextAuth.js has no fee at all, so your cost is the engineering time to build and maintain around it. Clerk is free up to 50,000 monthly retained users per app and then charges per extra user, so cost grows with your user base.
Clerk vs NextAuth.js pricing
NextAuth.js costs nothing. Clerk is free for small apps and charges by monthly retained users once you grow past the free allowance.
Clerk
Hobby is free for up to 50,000 monthly retained users per app. Pro is $25 a month ($20 billed yearly) with 50,000 included, then from $0.02 per extra user. Business is $300 a month and Enterprise is custom.
- Hobby
- $0
- Pro
- $25 a month, or $20 a month billed yearly
- Business
- $300 a month, or $250 a month billed yearly
- Enterprise
- Custom, billed yearly
- B2B authentication add-on
- $100 a month, or $85 a month billed yearly
- Administration add-on
- $100 a month, or $85 a month billed yearly
NextAuth.js
Completely free and open source. There is no paid tier for the library itself, so costs are your own hosting and development time.
Prices in USD from the official pricing pages on 5 October 2026. They change often, so confirm on clerk.com and authjs.dev before you commit.
Usage and activity
NextAuth.js has 16 times as many GitHub stars as Clerk (28.4k against 1.8k). Weekly npm downloads: 3.1M for @clerk/nextjs and 7.8M for next-auth. Releases on GitHub in the last 90 days: 10 for Clerk and 4 for NextAuth.js.
| Measure | Clerk | NextAuth.js |
|---|---|---|
| GitHub stars | 1,767 | 28,364 |
| npm downloads a week | 3.1M (@clerk/nextjs) | 7.8M (next-auth) |
| Latest release | @clerk/[email protected].…, 9 hours ago | [email protected]…, 2 months ago |
| Releases in 90 days | 10 | 4 |
From the public GitHub and npm APIs, updated daily. Stars and downloads show developer interest, not product quality.
Should you choose Clerk or NextAuth.js?
Choose Clerk if
- You want sign-in, user profiles and organizations without building the screens yourself
- You prefer a vendor to run sessions, MFA and passkeys rather than maintaining them
- You are starting a new project and want an actively developed auth product
- Your user count fits comfortably inside the free allowance or the Pro plan
Choose NextAuth.js if
- You already run NextAuth.js or Auth.js in production and a forced migration is not needed
- You must keep all user data in your own database with no third-party service
- You have the engineering time to own the sign-in interface and session handling
- You accept a patch-only project with no new features
Switching between Clerk and NextAuth.js
Moving from NextAuth.js to Clerk means importing your existing users into Clerk, replacing your sign-in pages and session checks with Clerk's components and middleware, and deciding what to do about password hashes and linked OAuth accounts. If you would rather stay self-hosted, the project's own guidance points new work to Better Auth, so that is the closer migration target than staying on NextAuth.js indefinitely.
Clerk vs NextAuth.js: common questions
Is NextAuth.js still maintained?
Only minimally. It was renamed Auth.js, its main maintainer left in January 2025, and Better Auth took over stewardship on 22 September 2025 to provide security patches. New projects are recommended to use Better Auth instead, and existing users are not forced to migrate.
Is Clerk free?
Yes up to a point. The Hobby plan covers 50,000 monthly retained users per app with up to 3 dashboard seats, but it excludes MFA, passkeys and enterprise SSO. Pro starts at $25 a month.
Can I keep my users in my own database with Clerk?
Clerk stores user records in its hosted service. If your requirement is that all user data lives in your own database, a library such as NextAuth.js or Better Auth fits that better than a hosted service.
Does NextAuth.js work outside Next.js?
Yes. It also supports React, SvelteKit, Express and Qwik, though Next.js is its main use case.
Which is better for B2B apps with organizations?
Clerk, because it includes organizations and offers a B2B authentication add-on. NextAuth.js has no organization model, so you would build one yourself.
Other options to consider
All auth toolsBetter Auth
Open source TypeScript authentication framework that joined Vercel on 7 July 2026.
WorkOS
Enterprise-readiness platform adding SSO, directory sync, audit logs and user management to an app.
Keycloak
Open source identity and access management with single sign-on, OpenID Connect and SAML.
SuperTokens
Open source authentication platform, free to self-host with no limits, or managed cloud from $0.02 per MAU.
Sources
More sources for each tool are on the Clerk and NextAuth.js pages.