In Neon, you can recover a 100 TB database in 1 second. No more fear of breaking production

Changelog

The latest product updates from Neon

RSS feed

Monitor queries in the Neon Console

Currently available to members in our Early Access Program, you can now monitor your active queries and query history from the Monitoring page in your Neon project.

Neon query history

  • The Active Queries view displays up to 100 currently running queries for the selected Branch, Compute, and Database.
  • The Query History view shows the top 100 previously run queries for the selected Branch, Compute, and Database. Queries can be sorted by Frequency or Average time.

For more about these new monitoring options, see Monitor active queries and Monitor query history.

Save your connection details to 1Password

If you've got the 1Password browser extension, you can now save your database connection details to 1Password directly from the Neon Console. In your Project Dashboard, click Connect, then click Save in 1Password.

1Password button on connection modal

Renamed Neon Authorize to Neon RLS Authorize

We've renamed our JWT-based authorization feature to Neon RLS Authorize to better reflect its core value: connecting your authentication provider's JWTs with Postgres Row-Level Security (RLS) policies. You can now find this feature under Settings > RLS Authorization in the Neon Console.

RLS Authorize in the Settings page

Learn more about Neon RLS Authorize or try our tutorial.

Renamed Neon Identity to Neon Auth

We've also renamed our Early Access auth integration feature to Neon Auth. Neon Auth lets you automatically sync user profiles from your authentication provider to your database. Learn more about it in Neon Auth.

Or sign up to the Early Access Program to try it out.

Scheduled updates on Free & coming soon to Launch and Scale

Two weeks ago, we announced scheduled updates for Neon, including Postgres version upgrades, security patches, and Neon feature enhancements.

This week, we introduced the Updates page in your Project Settings. Free Plan users get update notices 24 hours in advance. Updates, which take only a few seconds, are applied at the scheduled time or the next time your compute restarts.

Free plan updates UI

Launch and Scale Plan users will start seeing update notices in another week or so. We aim to provide 7 days' notice for updates on paid plans. Paid users can also choose a preferred update window — you can do that now, well ahead of any planned updates.

Paid plan updates UI

We also support checking for scheduled updates using the Neon API.

For more information about scheduled updates, see our Updates documentation. If you have questions, please reach out to us on Discord or contact Neon Support.

Fixes & improvements
  • Postgres extension updates

    We updated the pg_mooncake extension version to 0.1.1.

    If you installed this extension previously and want to upgrade to the latest version, please refer to Update an extension version for instructions.

  • Time Travel connections

    Ephemeral computes, used for Time Travel connections, now use a compute size of 0.50 CU (0.50 vCPU, 2 GB RAM). This is up from the 0.25 CU size used previously. For more, see Time Travel — Billing considerations.

  • Console updates

    • We've updated the Usage section on the Billing page to make it easier to track your plan allowances, extras, and total usage.
    • The Schema-only branch option on the Create new branch modal is now disabled when you reach the root branch limit for your project. For details, see Schema-only branches allowances.
  • Support for CREATE ROLE ... NOLOGIN

    Neon now supports creating Postgres roles with the NOLOGIN attribute. This allows you to define roles that cannot authenticate but can be granted privileges.

    CREATE ROLE my_role NOLOGIN;

    Roles with NOLOGIN are commonly used for permission management.

    Support for NOLOGIN was also extended to the Neon API and CLI:

  • CLI support for schema-only branches

    We added CLI support for our recently introduced schema-only branches feature. You can now create a schema-only branch from the CLI using the --schema-only option with the neon branches create command.

    neon branches create --schema-only
  • Branch archiving

    Neon now limits each project to 100 unarchived branches. Branches older than 14 days and inactive for more than 24 hours are automatically archived to cost-efficient storage. No action is needed to unarchive a branch—it happens automatically when accessed, usually without noticeable performance impact. If you exceed the 100-unarchived branch limit, Neon will archive branches more quickly to stay within the limit. To learn more, see Branch archiving.

  • Vercel Native Integration

    Fixed an authentication issue that prevented creating another user from a Vercel team in Neon.

  • Vercel Previews Integration

    • The Neon Vercel Previews Integration now supports deployments to Vercel custom environments. However, automated branch deletion does not remove environment variables created by the Neon integration in custom environments. These variables must be deleted manually in the Vercel dashboard.
    • Fixed an issue where preview deployments in Vercel custom environments were incorrectly recreated in the preview environment instead of the intended custom environment. Additionally, addressed a problem where preview deployments triggered via the Vercel CLI failed to be recreated due to missing Git information in the Get Deployment API response. Deployments now correctly redeploy when Git information is unavailable.
    • For Neon branches created for Vercel preview deployments, we now show the Vercel preview deployment URL and the associated GitHub pull request on the Branches page in the Neon Console.
  • Fixes

    • Resolved an issue where the System operations tab on the Monitoring page could display system operations from more than one project when switching between projects.
    • Resolved an issue where the branches list in the Neon Console did not immediately update after restoring a branch.
    • Fixed a time format issue on the project settings Updates page where displayed time values were inconsistent, with one shown in UTC and another in local time.
    • Fixed an issue related to resetting account passwords and changing account emails.
    • Fixed a concurrency issue where two branches created from the same parent in close succession collided. Previously, the operations on the parent did not complete fast enough for both create branch operations to work.
    • Fixed an email validation issue on the Feedback form in the Neon Console.
    • Fixed an issue in the Neon SQL Editor where the compute status in the compute drop-down menu remained Idle after running a query.

The Neon Slack App is available for early access

Neon Slack App

The Neon Slack App helps you stay connected to your Neon Serverless Postgres databases. Here's what you can do with it:

  • 📈 Track compute and storage usage in real time
  • 🔔 Get alerts when your database approaches its performance limits
  • 🟢 Quickly check the Neon platform's status

We’d love to hear your feedback. Use the /neon feedback command in Slack to share your thoughts and feature requests.

👉 See the documentation for setup instructions.

Scheduled updates on the Free Plan starting soon

Last week, we announced that Neon is introducing scheduled updates, starting with Free Plan accounts. These updates include Postgres version upgrades, security patches, and Neon feature enhancements. Your project's computes will be updated automatically at a scheduled date and time. While updates need a compute restart, it only takes a few seconds to complete.

Free Plan accounts will start seeing update notices in their projects' settings on a new Updates page in early February, at least 24 hours before any scheduled update.

Update notices for Neon's paid plans will start rolling out in the second week of February, with at least 7 days' notice before a planned update.

Stay tuned for more details.

Protect sensitive data with schema-only branches

You can now create schema-only branches that copy just the database schema from a source branch — without any data. This is ideal for working with confidential information. Instead of copying sensitive data, create a branch with just the database structure and add your own randomized or anonymized test data. It's a secure and compliant way for your team to develop and test using Neon branches.

To learn more, see Schema-only branches.

Schema-only branches are currently available through our Early Access Program. Learn how to join.

Project-scoped API keys from the Console

Recently, we added support for project-scoped API keys for your Neon Organization. These keys provide member-level authorization, scoped to a particular project. First available only via API, you can now create them from the Neon Console as well, for better visibility and management.

project-scoped API key from the Console

Learn more about creating project-scoped API keys.

Support for the postgres_fdw extension

Neon now supports the postgres_fdw (foreign data wrapper) extension. This extension lets you integrate with remote Postgres databases by defining foreign tables that map to tables in external databases. You can then query remote data as if it were stored locally. Check out our guide to learn more.

pg_cron is now available for all users

The pg_cron extension is now available to everyone using Neon. Before, you needed a paid plan and help from Neon Support to use it. See Enable the pg_cron extension to get started.

Fixes & improvements
  • Drizzle Studio update

    We updated the Drizzle Studio integration that powers the Tables page in the Neon Console to version 1.0.12. For the latest improvements and fixes, see the Neon Drizzle Studio Integration Changelog.

  • Console updates

    Added a clear banner in the SQL Editor's results pane when running Time Travel queries to show that you're viewing historical data.

    time travel banner in SQL Editor

  • Postgres extension updates

    • Neon now lets you install the previous version of pgvector, which is one version behind the latest supported version.

      For example, if Neon’s latest supported pgvector version is 0.8.0, you can install the prior version, 0.7.4, by specifying the version number:

      CREATE EXTENSION vector VERSION '0.7.4';

      For more, see Use a previous version of pgvector.

    • The pgx_ulid extension (0.2.0) is now available for Postgres 17. To install it, run:

      CREATE EXTENSION pgx_ulid;`
  • Neon API

    Newly created Neon API keys are now prefixed with napi_. This change improves security by making it possible to use secret scanning mechanisms that rely on identifiable markers.

    Existing API keys remain valid. If you want to use the new format, you can generate a new API key. For instructions, see API keys.

  • Fixes

    • Fixed a bug where you might see an empty error screen when changing your email or resetting your password.
    • Fixed an issue where the SQL Editor sometimes ran queries on the main branch instead of your selected branch.

Neon Chat for Visual Studio Code

The Neon Chat for Visual Studio Code extension is now available in the GitHub Marketplace. This AI-powered assistant lets you chat with the latest Neon documentation without leaving your IDE.

Get answers to common questions like:

  • How to create a project?
  • How can I get started with the Neon API?
  • How do I create a branch using the Neon CLI?

Neon Chat for Visual Studio Code

Scheduled updates coming soon 📅

Neon is introducing scheduled updates, starting with Free Plan accounts and later expanding to Paid Plans. These updates will cover Postgres updates, security patches, and Neon feature enhancements, automatically applied to your project's computes. Here's what to expect:

  • Updates aren’t new, but now they’ll be scheduled so you’ll know when they’re coming and won't fall behind on important maintenance.
  • Updates require a compute restart, but restarts are quick and automatic — taking just a few seconds.
  • If your computes scale to zero & restart regularly, available updates will be applied on compute restart, removing the need for "scheduled" updates.
  • You’ll be able to track scheduled updates in your project settings.
  • Free Plan accounts will have updates scheduled in advance for a specific day and time, while Paid Plan accounts will be able to choose a preferred update window.

Stay tuned for specific details about when scheduled updates will roll out. Free Plan users can expect to see scheduled updates first, starting in early February. Scheduled updates on Paid Plans will roll out later, with updates for large compute sizes (> 8 CU) rolling out last.

Connect to external Postgres databases with the dblink extension

Neon now supports accessing external Postgres databases using the dblink extension. dblink lets you easily connect to other Postgres databases and run queries on them. It's a good choice for quick, one-off queries or situations where you need data from a remote database but don’t want to configure a foreign data wrapper.

Support for the pg_repack extension

The Postgres pg_repack extension is now available on paid Neon plans upon request. This extension helps you remove bloat from tables and indexes while optionally restoring the physical order of clustered indexes — all without requiring an exclusive lock during processing. This extension is currently available only on paid Neon plans. To enable pg_repack, open a support ticket and include your endpoint ID and the database name where you'd like the extension enabled.

Meet "Instagres": No signup, instant Postgres ✨

Neon's architecture lets us do some pretty interesting things, like creating a Postgres database in less than a second (AI agents loves this, btw). To showcase this ability, we've built "Instagres," an app that lets you generate a Postgres database URL almost instantly — no sign up required. If you'd like to keep the database for more than an hour, you can transfer it to your Neon account.

Instagres UI

Give it a try at https://www.instagres.com/ or by running npx instagres in your terminal.

The "Instagres" app is powered by Cloudflare, React Router, and DrizzleORM.

If you like this feature or see different use cases for it, please let us know via the Feedback form in the Neon Console or our feedback channel on Discord.

To learn more, read the blog post.

Pooled connection strings are now default in the Neon Console

Pooled connection strings are now the default in the Connection Details widget in the Neon Console. Pooled connection strings include a -pooler option, which directs connections to a pooled connection port powered by PgBouncer. With support for up to 10,000 concurrent connections, connection pooling improves performance, reduces latency, and makes resource management more efficient for most applications. For specific tasks like pg_dump and other session-dependent operations like schema migrations, you can still get direct connection string at any time by disabling the connection pooling toggle in the Connection Details widget or by removing -pooler from your connection string manually.

pooled connection string

A new version of the Neon Python SDK

Neon's Python SDK, which is a wrapper for the Neon API, has been updated to a new version (0.3.0). This new version updates the Python data types from Neon's API schema.

This SDK simplifies integration of Python applications with Neon by providing methods to programmatically manage Neon API keys, projects, branches, databases, endpoints, roles, and operations.

Fixes & improvements
  • Drizzle Studio update

    The Drizzle Studio integration that powers the Tables page in the Neon Console has been updated to version 1.0.11. For the latest improvements and fixes, see the Neon Drizzle Studio Integration Changelog.

  • Console updates

    Increased concurrency limits. Last week we announced increased Neon API operation concurrency limits on Neon's Free, Launch, and Scale plans. This enhancement is now supported on all Neon plans.

    As noted in last week's changelog: Previously, concurrent API operations within a Neon project — such as operations on different branches — could trigger a "project already has running operations" error, where one branch operation would block others. This improvement reduces the need to work around strict concurrency limits. However, we still recommend adding retry functionality to handle rare cases where an API operation fails due to ongoing operations.

    This change applies only to the Neon API. In the Neon Console, controls such as buttons that initiate new operations are still briefly disabled until ongoing operations are complete. Concurrency improvements will be reflected in the UI in a future release.

  • Fixes

    Fixed an issue with the Create branch button in the Neon Console. Previously, the button became disabled for unfinished project operations, including those that failed due to an error. Now, the button is disabled only for project operations in the canceling, running, or scheduling state.

Neon Copilot Extension

The Neon Database Copilot Extension is now available in the GitHub Marketplace. This extension makes it easier to configure Neon for your repository. You can chat with the latest Neon documentation within the context of your repository!

GitHub Copilot Extension

Chat with curated Neon database documentation directly in GitHub Copilot and get answers to common questions like:

  • How to create a project?
  • How can I get started with the Neon API?
  • How do integrate the Neon API into my GitHub repository.

Setup instructions:

  1. Install the extension
  2. Type @neondatabase in the chat to start interacting

Coming soon, you'll be able to directly interact with Neon endpoints by simply asking questions. Additionally, new tools will enable you to create Neon databases directly from the chat interface.

Schema Diff API

Rounding out our schema diff features, Neon now supports a schema diff API endpoint (compare_schema), enabling programmatic comparison of database schemas between Neon branches. This addition complements our existing Schema Diff features available in the Console, CLI, and GitHub Action.

Example:

curl --request GET \
     --url 'https://console.neon.tech/api/v2/projects/{project_id}/branches/{branch_id}/compare_schema?base_branch_id={base_branch_id}&db_name={db_name}' \
     --header 'accept: application/json' \
     --header 'authorization: Bearer $NEON_API_KEY'

For detailed documentation, see Using the Schema Diff API.

Postgres extension updates

  • The pg_mooncake extension has been updated to version 0.1.0. For details about this release, see the release page.

    To use the pg_mooncake extension with Neon, check out our pg_mooncake guide for more information.

    To upgrade from a previous version of the extension, follow the instructions in Update an extension version.

  • The pg_embedding extension, deprecated in September 2023, has been removed from Neon. This extension supported the Hierarchical Navigable Small World (HNSW) algorithm for vector similarity search in Postgres. HNSW support is now available in the pgvector extension, which is also supported by Neon.

Fixes & improvements
  • Drizzle Studio update

    The Drizzle Studio integration that powers the Tables page in the Neon Console has been updated. For the latest improvements and fixes, see the Neon Drizzle Studio Integration Changelog.

  • Console updates

    • Enhanced pagination controls on the Branches page now let you adjust rows per page and skip directly to first/last pages.
    • Billing period dates in the console are now consistently shown in UTC format. Previously, these dates were sometimes shown incorrectly due to timezone conversions.
    • The Datadog integration is now accessible from both the Integrations and Monitoring pages for all users, with availability based on your plan.
    • The Trust Center is now accessible from the Help Menu (?) in the Neon Console. Here you can learn about our security practices and access security documentation.
  • Neon API

    • The Create project API now defines Postgres 17 as the default version.✨

    • Increased concurrency limits. We've increased Neon API operation concurrency limits. Previously, concurrent API operations within a Neon project — such as operations on different branches — could trigger a "project already has running operations" error, where one branch operation would block others. This improvement reduces the need to work around strict concurrency limits. However, we still recommend adding retry functionality to handle rare cases where an API operation fails due to ongoing operations.

      This enhancement is available on Neon's Free, Launch, and Scale plans and will soon roll out to all Neon plans. It applies only to the Neon API. In the Neon Console, controls such as buttons that initiate new operations are still briefly disabled until ongoing operations are complete.

    • We’ve added a new API endpoint to help you retrieve the total number of branches in a project. Use the following request to get the branch count for any project:

      GET /api/v2/projects/{project_id}/branches/count

      Example response:

      {
         "count": 2
      }
  • Neon CLI

    The Neon CLI now creates projects with Postgres 17 by default ✨

  • Fixes

    • Data sizes are now displayed as kB, MB, GB (instead of KiB, MiB, GiB) across our console, docs, and website.
    • Restored the ability for Enterprise customers to set custom scale-to-zero timeout periods.
    • Replaced incorrect "insufficient permissions" message with a loading indicator when Organization admins open a project's Delete page.
    • Prevented duplicate installations of the Neon GitHub integration for organizations and personal accounts.

🎉 Happy New Year, everyone! 🎉

We're excited to kick off 2025 and let you know that we're shipping again! 🚢 Here's to an amazing year ahead. Let's go!

Postgres 17 for newly created Neon projects

Create PG17 project

Postgres 17 is now the default for newly created Neon projects. Neon continues to support Postgres 14, 15, and 16, if you prefer to stick with those. For Neon's Postgres version support policy, see Postgres Version Support.

Support for pg_cron

The Postgres pg_cron extension is now available on paid Neon plans upon request. This extension lets you schedule and manage periodic jobs directly in your Postgres database. To enable pg_cron, open a support ticket and include your endpoint ID and the database name where you'd like the extension enabled. Once added, you'll need to restart your compute to make it available.

Higher connection limits for autoscaling configurations

In Postgres, the max_connections setting controls the maximum number of simultaneous client connections the database server can handle. In Neon, this setting is configured based on your compute size configuration. Previously, with Neon's autoscaling feature, max_connections was defined by your minimum compute size only. To provide more available connections, max_connections is now set according to both your minimum and maximum compute size, allowing for much larger connection limits. For more information about how max_connections is configured for your Neon computes, see Parameter settings that differ by compute size.

PgBouncer default_pool_size now scales

Neon supports connection pooling with PgBouncer. Previously, Neon's PgBouncer configuration set the default_pool_size to a fixed value of 64, which limited Postgres connections to 64 per user/database pair, regardless of the compute size.

Now, the default_pool_size is dynamically set to 0.9 * max_connections, enabling significantly more concurrent Postgres connections per user/database pair. Note that larger compute sizes benefit from higher max_connections limits, which result in a proportionally larger default_pool_size.

For example, on an 8 CU compute with a max_connections limit of 3604, the default_pool_size increases from 64 to 3243 (0.9 × 3604).

Neon Identity is now available in Early Access

We're excited to announce Neon Identity, a new feature that automatically syncs user profiles from your auth provider straight to your Neon database. Eliminate custom integration code and focus on building.

With Neon Identity, user profiles are synchronized to the neon_identity.users_sync table, making it easy to access user data without additional configuration.

Join the Early Access Program to try it out. Sign up here.

Check out our docs to learn more.

Currently supporting Stack Auth, more providers coming soon.

More support for AI agents

Neon is now available as a tool for AI agents on both AgentStack and Composio.

AgentStack lets you create AI agent projects from the command line. The Neon tool allows agents to create ephemeral or long-lived Postgres instances for structured data storage. View the Neon tool here to see how an AI agent can create a Neon database in less than 500 ms, connect to the database, and run SQL DDL and DML statements.

@tool("Create Neon Project and Database")
def create_database(project_name: str) -> str:
  """
  Creates a new Neon project. (this takes less than 500ms)
  Args:
      project_name: Name of the project to create
  Returns:
      the connection URI for the new project
  """
  try:
      project = neon_client.project_create(project={"name": project_name}).project
      connection_uri = neon_client.connection_uri(
          project_id=project.id, database_name="neondb", role_name="neondb_owner"
      ).uri
      return f"Project/database created, connection URI: {connection_uri}"
  except Exception as e:
      return f"Failed to create project: {str(e)}"

Composio lets you connect 200+ tools to AI Agents — and it now supports Neon, enabling full integration between LLMs and AI agents and Neon's API. You can find the integration here.

Composio integration

Neon Auth.js adapter

We've introduced an Auth.js adapter for Neon, which enables storing user and session data in your Neon database. For adapter installation and setup instructions, see Neon Adapter in the Auth.js docs.

"Perplexity mode" for the Docs

We’ve added an AI-powered "perplexity mode" to the Neon Docs site, providing a conversational interface to quickly get the answers you need.

Perlexity mode for docs

Our AI chat assistant is built on various sources including the Neon Docs, the Neon Discord Server, and API docs — and it's updated daily.

Click Ask Neon AI to try it out.

Fixes & improvements
  • Drizzle Studio update

    The Drizzle Studio integration that powers the Tables page in the Neon Console has been updated. For the latest improvements and fixes, see the Neon Drizzle Studio Integration Changelog.

  • Console updates

    We adjusted billing period start dates in the console to use UTC time. Previously, timezone differences could cause the start date to display as the last day of the previous month.

  • Private Networking

    Fixed an issue where invalid VPC endpoint IDs would not be deleted. Invalid endpoint IDs are now transitioned to a deleted state after 24 hours and automatically removed at a later date.

  • Neon API

    The List branches endpoint now supports sorting and pagination with the addition of sort_by, sort_order, limit, and cursor query parameters. The sorted by options include updated_at, created_at, or name, and sort_order options include asc and desc. After an initial call, pagination support lets you list the next or previous number of branches specified by the limit parameter.

  • Neon API Client

    The TypeScript SDK for the Neon API was updated to a new version (1.11.4). The new version adds support for creating organization API keys.

  • Logical Replication

    Before dropping a database, Neon now drops any logical replication subscriptions defined in the database.

  • Fixes

    Fixed an issue that permitted installing the Neon GitHub integration for organizations or personal accounts where the integration was already installed.

Wrapping up 2024

As 2024 comes to a close, we focused on fixes and improvements this past week. But don’t worry — new features are already in development, and exciting updates are coming soon. We’re looking forward to sharing what’s coming in the new year, and there might even be a few interesting announcements before then. Stay tuned!

Upgrading to the latest Neon CLI version

If you use the Neon CLI, here’s a friendly reminder to upgrade to the latest version. The current version is 2.6.0, and all users should now be on a 2.x version. You can check your Neon CLI version with the following command:

$ neon --version
2.6.0

For upgrade instructions, see Neon CLI upgrade.

If you use the Neon CLI in CI/CD tools like GitHub Actions, you can safely pin it to @latest, as we prioritize stability for CI/CD processes. For example, in a GitHub Actions workflow, you can install the latest version with npm:

- name: Install Neon CLI
  run: npm install -g neonctl@latest
Fixes & improvements
  • Drizzle Studio update

    The Drizzle Studio integration that powers the Tables page in the Neon Console has been updated. For the latest improvements and fixes, see the Neon Drizzle Studio Integration Changelog.

  • Console updates

    • Added a link to the Neon API Reference in the information resources menu of the console.
    • The Support ticket modal now supports file attachments in the Neon Console. Attachments must not exceed 5 MB.
    • You can now sort columns in the branches table on the Branches page.
    • The organization account project page now includes an Integrations column in the projects table for viewing and adding integrations.
  • Neon Authorize

    It just keeps getting better. Drizzle ORM introduced a new with db.$withAuth method, offering a more convenient way to include user JWTs in queries to Neon.

    return db
      .$withAuth(authToken)
      .select()
      .from(schema.todos)
      .where(eq(schema.todos.userId, sql`auth.user_id()`))
      .orderBy(asc(schema.todos.insertedAt));

    Find more examples in our Neon Authorize tutorial.

  • Vercel Native Integration

    • Users of the native Neon integration in Vercel can now view the Archive storage metric on the Usage page under the Storage tab in the Vercel Dashboard. For more details about archive storage in Neon, see Branch archiving.
    • Neon's IP Allow feature is now available for Vercel-managed organizations. This feature is supported on Neon Scale and Business plans.
  • Azure Integration

    Support is now available for transferring projects from Neon personal accounts to Azure-created Neon organizations. Project transfers are only supported for Neon projects created in an Azure region. For more details, see Transfer Neon projects to an Azure-created Neon organization.

  • Neon API

    We added 204 response definitions to DELETE endpoints for scenarios where a branch, database, role, or endpoint does not exist or has already been deleted. A 204 response code indicates a successful operation that does not return content.

  • Fixes

    • Fixed an issue in the console where an error toast was not displayed when offline or when the server was unreachable. A Network error is now returned in such cases.
    • Corrected a usability issue where the Project Creation modal defaulted to an error state, requiring users to adjust autoscaling settings before creating a project.
    • Resolved an issue where users encountered a confusing error message when attempting to link a Microsoft account already logged in with the same email.
    • Fixed a drag-to-zoom failure on Monitoring page graphs that occurred when dragging from left to right and releasing the cursor outside of the graph area.
    • Fixed an issue preventing the addition of a read-write compute to a branch if another branch in the project had a read-write compute.
    • Addressed a Something went wrong error in the console related to the loading of an organization account.
    • Fixed an issue that prevented Ctrl+C query cancellation requests for connections using passwordless authentication.

Larger compute sizes are here

We’ve added support for larger compute sizes:

  • Neon's autoscaling feature now supports a maximum setting of 16 vCPU. Compute sizes larger than 8 vCPU are available on our Business and Enterprise plans.
  • Neon's Business and Enterprise plans now support fixed compute sizes up to 56 vCPU. Autoscaling is not yet supported for compute sizes larger than 16 vCPU but reach out to us if you'd like to extend your limit beyond that.

Project-scoped API keys

We now support per-project API keys, offering you finer-grained access control by limiting an API key's permissions to a particular project. This applies to organization-owned projects only — when creating an Organization API key, include the project ID in the request and the resulting key will be scoped to just that project. This key grants member-level permissions only, preventing destructive actions like deleting the project.

For more details, see Create project-scoped API keys.

Introducing psql.sh: run psql directly in your browser

We're excited to launch psql.sh, a browser-based version of the PostgreSQL command-line client. This new tool lets you instantly spin up a fresh database and start running SQL queries and psql commands right in your browser.

psql.sh uses Neon's branching to create instant, isolated database environments for you to experiment with. Try it out at psql.sh, or read about how we built it in our blog post: psql from the browser.

Support for pgvector 0.8.0

Neon now supports pgvector version 0.8.0. This new version adds support for iterative index scans, casts for arrays to sparsevec, and improves the performance of HNSW inserts and on-disk HNSW index builds.

For the full list of updates, refer to the pgvector changelog.

If you installed this extension previously and want to upgrade to the latest version, please refer to Update an extension version for instructions.

Fixes & improvements
  • Drizzle Studio update

    The Drizzle Studio integration that powers the Tables page in the Neon Console has been updated. For the latest improvements and fixes, see the Neon Drizzle Studio Integration Changelog.

  • Console updates

    Fixed scrolling issues with the SQL Editor and the branches list on the Branches page. Both vertical and horizontal scrolling now work as expected.

  • Fixes

    • Improved the custom date/time selector to default to the current time, use standardized UTC format (2006-01-02T15:04:05Z), and accept manual entries in the same format.
    • Fixed the Current billing for this period total displayed on the Billing summary page to correctly reflect archive storage costs and current pricing. Note this was a display issue only; actual bills were unaffected.

Neon is Now Available as an Azure Native Integration

If your company uses Azure, getting started with Neon is now easier than ever. This week, we launched Neon as an Azure Native Integration, enabling developers to deploy Neon Postgres databases directly from the Azure portal.

With this new integration, you can:

  • Provision and manage Neon organizations directly within Azure, using the Azure portal, CLI, or SDK.
  • Access Neon with your Microsoft credentials for simplified security and compliance.
  • Include Neon charges in your Azure bill.

For more, read the announcement.

New Azure regions

We’ve added support for two new Azure regions:

  • Azure Germany West Central (Frankfurt) — azure-gwc
  • Azure West US 3 (Arizona) — azure-westus3

For a full list of regions supported by Neon, see Regions.

Support for database schema management in the Neon Console

Drizzle Studio Schema Management UI

The Tables page in the Neon Console, powered by Drizzle Studio, received a major update this week. In addition to managing your data, you can now manage your database schema directly from the Tables page. New schema management options include:

  • Creating, altering, and dropping schemas
  • Creating and altering tables
  • Creating and altering views
  • Creating enums
  • Refreshing the database schema

We’d love to hear your thoughts on these new capabilities! Share your feedback through the Feedback form in the Neon Console or join the conversation on Discord.

Stay updated on Drizzle Studio improvements and fixes by following the Neon Drizzle Studio Integration Changelog.

A Model Context Protocol (MCP) server for Neon

We’ve released an open-source Model Context Protocol (MCP) server for Neon, enabling any MCP Client such as Claude Desktop to interact with Neon’s API using natural language. AI agents can use our MCP server to perform actions such as creating databases, running SQL queries, and managing database migrations. For more, read the announcement and try it out on GitHub.

Archive storage on paid plans

A few weeks ago, we announced branch archiving on the Free Plan, which automatically stores inactive branches in cost-efficient archive storage. This feature is now available on our paid plans: Launch, Scale, and Business. Here’s what this means for you:

  • More storage and reduced storage costs: Branches older than 14 days and not accessed for 24 hours are automatically archived in cost-efficient archive storage.
  • New archive storage allowances by plan:
    • Launch: 50 GB
    • Scale: 250 GB
    • Business: 2500 GB
  • Billing for extra archive storage: Extra storage beyond your plan’s allowance is billed at $0.10 per GB-month. Inactive branches meeting the thresholds above will now cost less.
  • Monitoring archive storage usage: A new archive storage metric is available on the Billing page in the Neon Console.
  • Archived branch details and identification: Archived branches are marked with an archive icon in the console. The Branches page shows additional details, including the date and time a branch was archived.
  • Automatic archiving and unarchiving: No action is needed to archive or unarchive branches. Unarchiving happens automatically when you access a branch.
  • Performance considerations: You should notice little to no performance difference when connecting to or querying an archived branch, except for branches with large amounts of data where initial access may take a little longer until the branch is fully unarchived.

For more details, see Branch archiving and Archive storage.

Simplified "extra storage"

We reduced the cost of temporarily using more storage than is in your plan's monthly allowance. Previously, if you exceeded your storage allowance, you were allocated (and billed for) an extra storage unit at a prorated price for the rest of the month, even if the overage was brief. Now, you’re billed only for the storage you use for the length of time that you use it. This will be measured per GB-month.

Fixes & improvements
  • Console updates

    • The Monitoring page graphs now display data in the local timezone instead of UTC.
    • We added sorting for columns in the branches table on the Branches page. In addition, default and protected branches are always listed first, and the table now supports full keyboard navigation, allowing users to tab through table cells and rows. New Branches Table
  • Neon Authorize

    Neon Authorize now supports verifying an aud (audience) claim in JWTs to limit access to specific applications or services. For providers like Firebase Auth and GCP Cloud Identity, which use the same JWKS URL across all projects, defining an intended audience is required.

    Configure the audience via the Neon Authorize UI or the Neon Authorize API. This enhancement adds support for Firebase Auth and GCP Cloud Identity. See Supported providers for the full list.

  • Neon API updates

  • Vercel Native Integration

    History retention and logical replication settings are now configurable in Neon projects created in Vercel-created organizations. Previously, these settings could not be modified in Neon or Vercel.

  • Vercel Previews Integration

    • Enhanced the Vercel Previews Integration drawer to make it easier to connect Neon projects to Vercel projects.
    • Updated the Vercel Previews Integration drawer to display connected Vercel projects in a more compact table view when more than three projects are connected.
  • Fixes

    • Resolved an issue that blocked Schema Diff operations when other project operations were in progress. Schema Diff operations are now serialized to prevent concurrency errors.
    • Improved the error message in the Neon SQL Editor’s text-to-SQL AI feature when it fails to fetch the database schema.
    • Fixed inconsistencies in usage metrics and project allowances displayed on the Billing page in the Neon Console.
    • Fixed an issue that allowed selecting a future date when setting a custom period on the Monitoring page.

Neon Organizations are GA! 🎉

We're happy to announce that Neon Organizations is now generally available for everyone looking to move their teams to Neon.

get started with your new org

Create a new organization, transfer over your projects, invite your team members and get started collaborating. The Organizations feature lets you manage all of your team's projects under a single account — with billing, role management, and project transfer capabilities in one accessible location.

See Neon Organizations to get started. Organizations is a paid account feature.

Organization API keys

Along with GA for Organizations, we're also announcing support for Organization API Keys. As an admin of an organization, you control your organization's API keys. These keys provide admin-level access to all organization resources, including projects, members, and billing information.

You can access your organization's API keys from your organization settings.

Organization API keys control

Schema Diff GitHub Action

We're also introducing our Schema Diff GitHub Action to automatically compare database schemas in your pull requests. The action posts schema differences as PR comments, making it easy to review schema changes during development. It's smart about updates, maintaining a single, updated comment as you push new commits and staying quiet when there are no differences to report. See Schema Diff GitHub Action for more details.

Index: neondb-schema.sql
===================================================================
--- neondb-schema.sql	Branch main
+++ neondb-schema.sql	Branch preview/pr-9-feat/add-soft-delete
@@ -111,9 +111,10 @@
     title text NOT NULL,
     content text NOT NULL,
     user_id integer NOT NULL,
     created_at timestamp without time zone DEFAULT now() NOT NULL,
-    updated_at timestamp without time zone DEFAULT now() NOT NULL
+    updated_at timestamp without time zone DEFAULT now() NOT NULL,
+    deleted_at timestamp without time zone
 );


 ALTER TABLE public.posts OWNER TO neondb_owner;
@@ -180,5 +181,5 @@
 --
 -- Name: __drizzle_migrations id; Type: DEFAULT; Schema: drizzle; Owner: neondb_owner
 --

-ALTER TABLE ONLY drizzle.__drizzle_migrations ALTER COLUMN id SET DEFAULT nextval('drizzle.__drizzle_m
\ No newline at end of file
+ALTER TABLE ONLY drizzle.__drizzle_migrations ALTER COLUMN
\ No newline at end of file

Postgres version updates

The PostgreSQL Global Development Group has released an out-of-cycle minor version update to address regressions introduced in the previous minor version update. While Neon was unaffected by these regressions, we prioritize staying up to date with the latest version. As a result, we have updated our supported PostgreSQL versions to 14.15, 15.10, 16.6, and 17.2.

When a new minor version is available on Neon, it is applied the next time your compute restarts. For more about how we handle Postgres version upgrades, refer to our Postgres version support policy.

Neon Private Networking (Public Beta)

Neon now offers Private Networking, enabling secure database connections via AWS PrivateLink. This feature keeps all traffic between your client application and Neon database within AWS's private network, bypassing the public internet.

For details, see our guide: Neon Private Networking.

Any member of an Org account can apply to participate in this Public Beta by requesting access via the Organization Settings page in the Console.

And don't forget to check out this week's fixes and improvements:

Fixes & improvements
  • Logical Replication

    Neon now automatically removes inactive replication slots (if other active slots exist) after approximately 40 hours, up from the previous 75 minutes. This change reduces the risk of unexpected slot removal. If you've implemented measures to prevent slots from becoming inactive, you can now relax those measures accordingly.

  • Neon Serverless Driver

    • Fixed an issue with insertion of Buffer and ArrayBuffer values for BYTEA fields over HTTP. Thanks to @andyjy for the fix.
    • Fixed an authentication error that occurred when passing the authToken property only on the sql function.

    For the latest improvements and fixes for the Neon Serverless Driver, refer to the Neon Serverless Driver Changelog.

  • .NET support

    We've added .NET to the list of supported connection strings for various languages and frameworks in the Dashboard. You can now find connection details for .NET in both the connection widget and the Quickstart.

    For more information on connecting to Neon with .NET, see Connect a .NET (C#) application to Neon.

  • Console updates

    • We've added a Monitor button to each listed endpoint on your Branch details page. Click the button to open the Monitoring page, displaying metrics for this endpoint.

      monitor button on endpoint item

    • Added quick compute size editing directly from the Branches page — just click the size link in the primary branch column to adjust your settings.

      branches table compute drawer

  • Fixes

    • Improved validation of API key names and Organization names: added a 64-character length limit for API key names and Org names to the API specification and improved whitespace handling in the UI.
    • The Create Organization modal now correctly displays your Personal account plan when creating a new organization. Previously, it sometimes showed the plan from an existing organization instead.
    • When transferring a project to an organization, collaborators who are organization members are automatically removed from the project's collaborator list, as they already have access through their organization membership.
    • Fixed billing page display issues with project limits and usage tracking during plan changes. Previously, some organizations saw incorrect counts and misaligned indicators.
    • Added length validation for Organization member email addresses to prevent submission of invalid values.

A new Python SDK for the Neon API

Neon has a new Python SDK, which is a wrapper for the Neon API. This SDK simplifies integration of Python applications with Neon by providing methods to programmatically manage Neon API keys, projects, branches, databases, endpoints, roles, and operations.

It's easy to install with pip:

$ pip install neon-api

Then, from Python:

from neon_api import NeonAPI

# Initialize the client.
neon = NeonAPI.from_environ() or NeonAPI(api_key='your_api_key')

# Get the current user
user = neon.me()
print(user)

For more, see Python SDK for the Neon API.

Did you know?

In addition to the new Python SDK, Neon offers a TypeScript SDK for the Neon API. There are also community-maintained SDKs available for Go and Node.js. Learn more.

A Migration Assistant to help move your data

When you're ready to move your data to Neon, our new Migration Assistant can help. All you need to get started is a connection string for your existing database.

Enter your current database connection string, and the Assistant will:

  1. Run some preliminary checks on your database.
  2. Create a Neon project that best matches your current environment.
  3. Provide pg_dump and pg_restore commands to transfer your data, pre-populated with the correct connection strings.

For more, see Neon Migration Assistant.

Neon Migration Assistant interface

note

This feature is currently in Beta. If you have feedback, we'd love to hear it. Let us know via the Feedback form in the Neon Console or our feedback channel on Discord.

Organization account support for Vercel and GitHub integrations

Our Vercel Previews and GitHub integrations are now supported on Organization accounts. In case you're not familiar:

  • The Vercel Previews Integration connects your Vercel project to a Neon database and creates a database branch with each Vercel preview deployment.
  • The GitHub Integration connects your Neon projects to corresponding GitHub repositories, letting you bring your database to your DevOps workflow.

You can now make both integrations available to your Neon organization.

timescaledb extension support for Postgres 17

We added support for the timescaledb extension, version 2.17.1, to Postgres 17.

For a complete list of Postgres extensions supported by Neon, see Postgres extensions.

And don't forget to check out this week's fixes and improvements:

Fixes & improvements
  • IP Allow

    We addressed an issue for IP Allow users connecting over VPN where an Access Denied modal appeared repeatedly on the SQL Editor and Tables pages in the Neon Console. To prevent this, we added a "Do not ask again" checkbox to allow users to silence the modal.

  • Neon API updates

    We added two new endpoints for managing Neon Organizations members:

  • Time Travel Assist

    Ephemeral compute suspend timeouts for Time Travel Assist have been increased from 10 to 30 seconds. Time Travel Assist enables querying any point in your history using temporary branches and computes, which are automatically cleaned up after use. After 30 seconds of inactivity, the branch is deleted, and the endpoint is removed.

Was this page helpful?