Connect from any application
Learn how to connect to Neon from any application
What you will learn:
Where to find database connections details
Where to find example connection snippets
Protocols supported by Neon
Database connection details
When connecting to Neon from an application or client, you connect to a database in your Neon project. In Neon, a database belongs to a branch, which may be the default branch of your project (main
) or a child branch.
You can find the connection details for your database by clicking the Connect button on your Project Dashboard. This opens the Connect to your database modal. Select a branch, a compute, a database, and a role. A connection string is constructed for you.
Neon supports both pooled and direct connections to your database. Neon's connection pooler supports a higher number of concurrent connections, so we provide pooled connection details in the in the the Connect to your database modal by default, which adds a -pooler
option to your connection string. If needed, you can get direct database connection details from the modal disabling the Connection pooling toggle. For more information about pooled connections, see Connection pooling.
A Neon connection string includes the role, password, hostname, and database name.
postgresql://alex:AbC123dEf@ep-cool-darkness-a1b2c3d4-pooler.us-east-2.aws.neon.tech/dbname?sslmode=require
^ ^ ^ ^ ^
role -| | |- hostname |- pooler option |- database
|
|- password
note
The hostname includes the ID of the compute, which has an ep-
prefix: ep-cool-darkness-123456
. For more information about Neon connection strings, see connection string.
You can use the details from the the Connect to your database modal to configure your database connection. For example, you might place the connection details in an .env
file, assign the connection string to a variable, or pass the connection string on the command-line.
.env file
PGHOST=ep-cool-darkness-a1b2c3d4-pooler.us-east-2.aws.neon.tech
PGDATABASE=dbname
PGUSER=alex
PGPASSWORD=AbC123dEf
PGPORT=5432
Variable
DATABASE_URL="postgresql://alex:AbC123dEf@ep-cool-darkness-a1b2c3d4-pooler.us-east-2.aws.neon.tech/dbname?sslmode=require"
Command-line
psql postgresql://alex:AbC123dEf@ep-cool-darkness-a1b2c3d4-pooler.us-east-2.aws.neon.tech/dbname?sslmode=require
note
Neon requires that all connections use SSL/TLS encryption, but you can increase the level of protection by configuring the sslmode
option. For more information, see Connect to Neon securely.
Where can I find my password?
It's included in your Neon connection string. Click the Connection button on your Project Dashboard to open the Connect to your database modal.
Save your connection details to 1Password
If have a 1Password browser extension, you can save your database connection details to 1Password directly from the Neon Console. In your Project Dashboard, click Connect, then click Save in 1Password.
What port does Neon use?
Neon uses the default Postgres port, 5432
.
Connection examples
The Connect to your database modal provides connection examples for different frameworks and languages, constructed for the branch, database, and role that you select.
See our frameworks and languages guides for more connection examples.
Network protocol support
Neon projects provisioned on AWS support both IPv4 and IPv6 addresses. Neon projects provisioned on Azure support IPv4.
Additionally, Neon provides a low-latency serverless driver that supports connections over WebSockets and HTTP. Great for serverless or edge environments where connections over TCP may not be not supported. For further information, refer to our Neon serverless driver documentation.
Connection notes
- Some older Postgres client libraries and drivers, including older
psql
executables, are built without Server Name Indication (SNI) support, which means that a connection workaround may be required. For more information, see Connection errors: The endpoint ID is not specified. - Some Java-based tools that use the pgJDBC driver for connecting to Postgres, such as DBeaver, DataGrip, and CLion, do not support including a role name and password in a database connection string or URL field. When you find that a connection string is not accepted, try entering the database name, role, and password values in the appropriate fields in the tool's connection UI when configuring a connection to Neon. For examples, see Connect a GUI or IDE.
Need help?
Join our Discord Server to ask questions or see what others are doing with Neon. Users on paid plans can open a support ticket from the console. For more details, see Getting Support.