Skip to main content
Neon Postgres Docs

Search documentation

Type to search this documentation.

On this pageOverview

Changelog Nov 21, 2025 - Neon

50 projects on the Free plan, branch anonymization APIs, and more

We've increased the Free plan project limit again! The Neon Free plan now includes:

  • 30 projects
  • 50 projects

This gives you even more room for side projects, prototypes, experiments, and learning new stacks.

Dashboard page showing 50 Free Plan projects

This change applies automatically to all Free plan users. No action required. For more information about plan limits, see Neon plans.

Last week, we announced Data masking for creating anonymized branches (see the November 14 changelog). This week, you'll find the APIs for this feature available in the Neon API Reference.

Example request:

Bash
curl -X POST \
  'https://console.neon.tech/api/v2/projects/{project_id}/branch_anonymized' \
  -H 'Authorization: Bearer $NEON_API_KEY' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
    "masking_rules": [
      {
        "database_name": "neondb",
        "schema_name": "public",
        "table_name": "users",
        "column_name": "email",
        "masking_function": "anon.dummy_free_email()"
      },
      {
        "database_name": "neondb",
        "schema_name": "public",
        "table_name": "users",
        "column_name": "age",
        "masking_function": "anon.random_int_between(25,65)"
      }
    ],
    "start_anonymization": true
  }'

The new APIs include:

For usage examples and request/response details, see Data anonymization APIs.

We've migrated neonstatus.com to a new provider. The domain remains the same and all historical incident data has been preserved.

If you've previously subscribed to the Neon Status page via RSS, you'll need to update your feed. For instructions, see Neon status.

API parameter deprecation
  • A redundant name query parameter in the Restore snapshot API endpoint has been deprecated. Use the name field in the request body instead.
Data masking
  • The Apply masking rules button on the Data masking page is now disabled when no masking rules have been changed, preventing unnecessary reapplication of masking rules.
  • Added placeholder text to the search field on the Data masking page to clarify that it searches for columns to anonymize.
Drizzle Studio
Fixes
  • The Restore branch from modal displayed before completing a restore operation now only shows an expiration date extension message for branches that have an expiration date set. Previously, the message was shown for all branches, even those without an expiration date.
  • Fixed an issue where timestamps shown on the Restore branch from modal were formatted inconsistently, alternating between UTC and local timezone. Timestamps now consistently display in your local timezone.
  • For the Neon Data API, we fixed an issue where PostgreSQL custom types (such as ENUMs) containing capital letters in their names were not handled correctly.
Suggest an edit

Propose a replacement for this page. The site team reviews it before applying any changes.

Export
Documentation menu