Today, on 25 September 2025, PostgreSQL 18 has been officially released. After months of betas and release candidate testing, the final version is here and it brings with it some of the most significant changes in recent years.
A year ago, we published an article about the new features of PostgreSQL 17 (released in September 2024), highlighting the improvements in the areas of performance, developers and cloud.
So how does PostgreSQL 18 build on version 17 and where are the biggest changes to be found? Let’s dive in.

1. Overview of the most important enhancements of PostgreSQL 18
PostgreSQL 18 offers advances in four important areas:
- Performance: asynchronous I/O, smarter query planning, improved parallelism.
- Developer features: virtual generated columns, uuidv7(), improved RETURNING, timing constraints.
- Operations and security: faster upgrades via pg_upgrade, improved pg_checksums, OAuth 2.0, stricter TLS defaults.
- Cloud readiness: smoother container deployments, improved FDWs, steps towards distributed workloads
The full list can be found in the official PostgreSQL 18 release notes.
1a. PostgreSQL 17 vs. PostgreSQL 18: Where the big changes are?
Area | PostgreSQL 17 | PostgreSQL 18 |
Parallel execution of queries | Available, but to a limited extent; manual tuning was often required. | Enhanced and smarter parallelisation; initial benchmarks indicate up to 40% faster analytical queries. |
Query planner and indexing | BRIN improvements, but some suboptimal plans. | Skip scan for multi-column B-tree indexes, refined statistics, reduced index bloat. |
I/O | Traditional synchronous I/O. | New asynchronous I/O subsystem — sequential/bitmap scans and VACUUM up to 3× faster. |
Upgrades | pg_upgrade required a complete rebuild of the statistics. | pg_upgrade now retains the statistics, which makes major upgrades faster. |
Developer features | Upgrades | Virtual generated columns, uuidv7(), extended RETURNING, timporal constraints. |
Replication | Logical replication with limited filtering. | Fine-grained filtering, pg_createsubscriber, parallel streaming. |
Security | TLS improvements, MD5 still supported. | OAuth 2.0 authentication, MD5 deprecated, stricter TLS requirements, checksums enabled by default. |
Monitoring | Basic statistical views. | Advanced views: Locks, wait events, query diagnostics. |
2. Performance and query optimisation
- Asynchronous I/O subsystem: faster sequential scans, bitmap scans and VACUUM.
- Skip scan for multi-column indices.
- Parallel queries: up to 40% faster in early benchmarks.
- Better join planning and memory utilisation.
3. Functions for developers
- Virtual generated columns for more flexibility in the schema.
- uuidv7() function for time-ordered UUIDs.
- Extended RETURNING with OLD/NEW.
- Temporal constraints: Enforces integrity over time periods.
- JSON/JSONB: faster operators, better nested queries.
- Text processing: improved Unicode support and case sensitivity.
4. Administration, monitoring and security
- pg_upgrade preserves statistics and reduces downtime.
- pg_checksums has been improved.
- Logical replication: finer control, new tools, parallel streaming.
- Security: OAuth 2.0, MD5 deprecated, TLS 1.3 default settings.
- ⚠️ Check the TLS/auth changes carefully before upgrading.
- Checksums are enabled by default on new clusters.
- Extended monitoring views for blocking and request activity.
5. Cloud and distributed workloads
- Better default settings for Docker/Kubernetes.
- Faster FDW operations for external data sources.
- Partitioning and cross-node foundations for distributed queries.
6. Migration instuctions
The upgrade from PostgreSQL 17 to 18 should work reliably with pg_upgrade. However, the workloads should always be tested beforehand, especially if extensions or FDWs are used.
Upgrade immediately if you:
- Depend on JSONB (significant performance increase).
- Use logical replication (parallel streaming, philtres).
- Need faster upgrades with pg_upgrade.
Consider waiting if you:
- Have strict compliance environments that are sensitive to TLS/auth changes.
- PostgreSQL 17 is stable and you don’t need new features.
7. What’s coming next
Discussions in the community indicate that PostgreSQL 19 will focus on distributed systems and AI/ML integration, including vector search.
Conclusion
PostgreSQL 18 is a balanced release with significant changes compared to version 17. It brings a modern I/O subsystem, developer-friendly features, smoother upgrades, more security and significant performance improvements – all while maintaining the stability typical of PostgreSQL. Companies should read the official release notes, test in staging and plan migrations carefully, especially if TLS and authentication requirements are affected.
👉 Official information: PostgreSQL 18 release notes