{
  "slug": "azure-postgresql-18-end-of-support",
  "title": "Azure Database for PostgreSQL: PostgreSQL 18 end of standard support",
  "summary": "Azure Standard Support End Date for PostgreSQL 18 on Azure Database for PostgreSQL: 14 Nov 2030. Once the Azure Standard Support period ends, eligible servers still running the version are automatically enrolled in extended support.",
  "cloud": "azure",
  "service": "Azure Database for PostgreSQL",
  "service_slug": "postgresql",
  "category": "database",
  "type": "end_of_support",
  "announced_date": null,
  "effective_date": "2030-11-14",
  "effective_precision": "day",
  "impact": "Once the Azure Standard Support period ends, an eligible server still running PostgreSQL 18 is automatically enrolled in extended support. The eligible versions table lists PostgreSQL 11, 12, 13 and 14.\n\n- Extended support provides security patches, critical bug fixes and technical support for up to three extra years. It does not include new features, performance enhancements or support for minor version upgrades.\n- Charges apply after any applicable grace period unless the server is upgraded to a supported version, and only to servers in a Succeeded (running) state. A one-month grace period is provided for versions 11, 12 and 13. A server that regional capacity constraints prevent from upgrading might be temporarily excluded from billing.\n- The version policy page lists restrictions that apply after the retirement date of a version, without stating whether that date is 14 Nov 2030: new servers cannot be created on a retired version, while point-in-time recoveries and read replicas of existing servers remain possible.\n- The same page says that when the community retires a version, Azure stops applying bug or security patches to the database engine. The extended support page lists security patches and critical bug fixes as part of extended support.",
  "migration_path": "1. Run the upgrade validation checks in the Azure portal or with the Azure CLI. See [Run upgrade validation checks](https://learn.microsoft.com/en-us/azure/postgresql/configure-maintain/how-to-run-upgrade-validation-checks).\n2. Resolve any blocking issues the checks report, then rerun validation.\n3. Ensure the server has at least 10-20% free storage available before starting the upgrade.\n4. If the server uses geo-replication, delete the read replica (including any cascading read replica) before upgrading the primary server. The replica can be re-created after the upgrade.\n5. Run an in-place major version upgrade to a PostgreSQL version that Azure currently supports. The service can skip versions and upgrade directly to a later version. Servers that use TimescaleDB are limited to specific source and target version combinations, and an upgrade from PostgreSQL 11 first requires SCRAM authentication to be configured. Once the server runs a supported version, extended support charges no longer apply. See [Major version upgrades](https://learn.microsoft.com/en-us/azure/postgresql/configure-maintain/concepts-major-version-upgrade).\n6. Plan for the fact that there is no automated way to revert after a successful upgrade. A point-in-time recovery to a time before the upgrade restores the previous version on a new server.",
  "replacement": null,
  "affected_versions": [
    "18"
  ],
  "source_url": "https://learn.microsoft.com/en-us/azure/postgresql/configure-maintain/concepts-version-policy",
  "extra_source_urls": [
    "https://endoflife.date/azure-database-for-postgresql"
  ],
  "vendor_ref": "azure-database-for-postgresql@18",
  "last_checked_at": "2026-11-12T09:55:36.471Z",
  "created_at": "2026-11-13T13:36:44.208Z",
  "updated_at": "2026-11-13T13:36:44.208Z",
  "url": "https://eolwatch.dev/items/azure-postgresql-18-end-of-support",
  "short_url": "https://eolwatch.dev/i/dp",
  "markdown_url": "https://eolwatch.dev/items/azure-postgresql-18-end-of-support.md",
  "json_url": "https://eolwatch.dev/items/azure-postgresql-18-end-of-support.json",
  "estate_check": {
    "resource_types": [
      "microsoft.dbforpostgresql/flexibleservers",
      "azurerm_postgresql_flexible_server"
    ],
    "fields": [
      "pgversion",
      "version"
    ],
    "inputs": [
      "Azure Resource Graph export (CSV or JSON)",
      "Terraform state or plan (JSON)",
      "ARM template"
    ]
  }
}
