---
title: Branchable Auth, 80 Free plan projects, and purely usage-based billing
---
## Neon Auth: branchable identity in your database
We've rebuilt Neon Auth using [Better Auth](https://www.better-auth.com/) as the foundation. Auth was the last part of Neon that didn't yet branch. Now it does. All authentication data lives directly in your Neon database, so when you branch, your entire auth state branches with it.

Users, sessions, organizations, configuration, and JWKS are stored in a dedicated `neon_auth` schema. Each branch gets its own isolated auth endpoint. No more external identity provider, no webhook syncing, no drift between environments.
**What branchable auth enables:**
- **Preview environments that actually work.** Spin up a branch that mirrors production exactly: same users, same roles, same permissions. Test full signup, login, password reset, and OAuth flows before release.
- **Safe multi-tenant testing.** Clone your environment, invite test organizations, modify access rules, and confirm permissions propagate correctly without risking production data.
- **Real auth in CI/CD.** Test the complete user lifecycle in automated pipelines with real authentication, not mocked tokens.
**How it works:**
- **Auth lives in your database.** Your user model sits in Postgres, evolving with your migrations and integrating naturally with your schema.
- **Works with RLS automatically.** Your Row-Level Security policies can reference the authenticated user directly, without duplicate identity tables.
- **Data API integration.** JWTs from Neon Auth are validated by the Data API, so authenticated queries work with your RLS policies out of the box.
- **One SDK for everything.** The new [`@neondatabase/neon-js`](/docs/reference/javascript-sdk) package brings Neon Auth, Data API, and database access together:
```tsx
import { createAuthClient } from '@neondatabase/neon-js/auth';
import { NeonAuthUIProvider, AuthView } from '@neondatabase/neon-js/auth/react/ui';
const authClient = createAuthClient(import.meta.env.VITE_NEON_AUTH_URL);
export default function App() {
return (
);
}
```
Neon Auth is available on all plans, including Free. Get started with [Next.js](/docs/auth/quick-start/nextjs), [React](/docs/auth/quick-start/react), or [TanStack](/docs/auth/quick-start/tanstack-router).
> _"Owning your auth means keeping your user model inside your architecture. Neon users now get that ownership while letting Better Auth take care of the parts that make authentication hard."_
> — Bereket Engida, creator of Better Auth
_Read more: [Meet the New Neon Auth: Branchable Identity in Your Database](https://neon.com/blog/neon-auth-branchable-identity-in-your-database) and [The Case for Owning Your Auth](https://neon.com/blog/the-case-for-owning-your-auth)_
## More projects on the Free plan
Another week, another increase: The Neon Free plan now includes:
- ~~70 projects~~
- **80 projects**
More projects means more room to experiment, prototype, and build without worrying about limits.

This change applies automatically to all Free plan users. No action required. For more information about plan limits, see [Neon plans](/docs/introduction/plans).
_Learn about [why we're increasing project limits on the Free plan](https://neon.com/blog/why-so-many-projects-in-the-neon-free-plan)_
## Purely usage-based billing
We've removed the $5 monthly minimum from our paid plans. Neon is now purely usage-based: if you use $3 one month, that's the bill you'll receive.
For more details, see [Neon plans](/docs/introduction/plans).
**Fixes & improvements**
- **MCP Server Updates**: The [Neon MCP Server](/docs/ai/neon-mcp-server) now supports the new Neon Auth with an updated `provision_neon_auth` tool and a new `setup-neon-auth` prompt, an interactive guide for setting up Neon Auth in Vite+React projects.
- **AI Rules**: Updated the [Neon Auth AI rules](/docs/ai/ai-rules-neon-auth) prompt for the new Neon Auth.
- **Postgres extension updates**: Updated the [pg_mooncake](/docs/extensions/pg_mooncake) extension to version 0.1.3. If you installed this extension previously and want to upgrade to the latest version, please refer to [Update an extension version](/docs/extensions/pg-extensions#update-an-extension-version) for instructions.
- **Vercel integration**: Fixed an issue where deleted Vercel integrations could cause unexpected errors. These cases are now handled gracefully.
- **Data anonymization**: Fixed an issue where materialized views retained stale data after anonymization. Materialized views are now automatically refreshed after anonymizing tables.
- **Schema-only branches**: Fixed an issue where roles with custom attributes were incorrectly recreated with elevated privileges in schema-only branches.
- **Neon Console**: Fixed an issue where the projects list failed to load when a project was unavailable.