# User accounts

Source: /docs/features/auth

Add sign-up and login for your app's end users. The auth service runs alongside your app and keeps its users in the app's own database. User accounts are available on every plan, including Free.

## Enable [#enable]

Open the app's tab and turn on **End-user authentication**.

* **Your app needs a database first.** If it doesn't have one, enabling auth turns one on for it.
* **User accounts are permanent.** Once on, authentication cannot be turned off — it holds your end users' identities for the life of the app.
* It activates on your **next deploy**. Until then the app shows **Pending deploy**.

## Configure [#configure]

There is little to set up beyond enabling. You manage your end users from the **Users** table: search by email, filter by active / banned / unconfirmed, and ban, unban, reset a password, confirm an email, or delete a user.

## Wire [#wire]

Your app talks to the auth service to sign users up, log them in, and read the current user.

You don't write this by hand. The dashboard's **agent setup** gives you a **wiring prompt** to paste into your coding agent. A [connected agent](/docs/mcp/overview) can pull the same prompt itself with the `generate_feature_prompt` tool — auth must be enabled in the dashboard first. After wiring, **deploy** to pick it up.

## Your database [#your-database]

With user accounts on, an **`auth` schema** appears in your app's database. The platform owns that schema; your app can read from it and keeps its own tables separately. See [what runs here](/docs/getting-started/what-runs-here) for how your app's database is laid out.