# `NeonDbError: sorry, too many clients already / remaining connection slots are reserved`

**Where it appears:** Terminal or Vercel runtime logs

**What it means:** Too many database connections were opened at once without pooling or reusing them.

## Likely causes

- Creating a brand-new database client pool on every hot reload in development instead of reusing a single module instance.
- Using the direct database URL instead of Neon's pooled `-pooler` connection URL.

## Message for your agent

```text
The database says `too many clients already`. Check that our database module reuses a single client across hot reloads and uses `@neondatabase/serverless`.
```

**Prevention:** Define the Neon client once in a shared `lib/db.ts` module and use the pooled connection URL.

---
Source: [Agentic Makers](https://agenticmakers.app/en/help/errors/postgres-remaining-connection-slots-are-reserved) · License: CC BY 4.0
