Release Date: 5 August 2026

Important Notice

We have identified an issue in 2026.07.0  that could result in unexpected query failures when using the trim() Cypher function and, in some cases, leave stored string data unreadable.  This bug, introduced in 2026.07.0, will be fixed in a pending patch release. Please do not use the 2026.07.0 release.

Advanced notice of changes scheduled for after 2026.LTS

Read more

New features and improvements

Server

  • High-Fidelity Quantized vector search is now generally available. The default index configuration for new indexes is Scalar quantization with an expansion factor of 1.5, existing indexes are unaffected until they’re rebuilt.  See Vector indexes – Cypher Manual.

Admin

Neo4j-admin import

Security

    • Upgraded Apache Shiro to version 2.2.1 in order to resolve CVE-2026-49268

Scalability

Infinigraph

Language

Cypher 25

    • Introduced the GROUP BY subclause to WITH and RETURN. The GROUP BY clause allows the user to explicitly state the grouping keys for an aggregating operation. This is an alternative to the implicit grouping already available in Cypher, and is introduced to better align Cypher with the GQL standard. See  Cypher Manual -> Group By

Deprecations

Scalability

Clustering

    • The following settings have been deprecated: 
      • <prefix>.cluster.raft.in_flight_cache.max_elements
      • <prefix>.cluster.raft.in_flight_cache.max_bytes

See Operations Manual -> Current deprecations.

Language

Cypher 25

    • If your RETURN or WITH clause contains a complex expression, any following subclause (like ORDER BY) must use the exact same text to reference it, or reference it via an alias. For example, if you project an expression like a.p + 0 you cannot later write ORDER BY a.p + 0 + 0
      • Deprecated: RETURN a.p + 0, COUNT(*) AS c ORDER BY a.p + 0 + 0
      • Best Practice (Use an alias): RETURN a.p + 0 AS calculation, COUNT(*) AS c ORDER BY calculation
      • Valid (Exact string match): RETURN a.p + 0, COUNT(*) AS c ORDER BY a.p + 0
    • Cypher will no longer allow you to use a variable name in a subclause (like ORDER BY) if it is unclear whether you mean the original incoming variable or a newly created variable with the same name. For example, in your query, you might have an existing, incoming variable (like a). If in your RETURN or WITH statement you create a new expression and alias it with that the same name (e.g., {p: b.p} AS a), when Cypher reaches the ORDER BY a.p subclause, it  doesn’t know if a refers to the original data that came into the clause, or the new data you just declared. This ambiguous behavior is now deprecated. 
      • Deprecated: RETURN a.p AS b, {p: b.p} AS a, COUNT(*) AS c ORDER BY a.p (Here, ORDER BY a.p doesn’t know if it should use the original a or the newly defined {p: b.p} AS a)
      • Best Practice (Use a unique alias): RETURN a.p AS b, {p: b.p} AS new_a, COUNT(*) AS c ORDER BY new_a.p (Now it is clear that the query is sorting by the newly created variable)

See Cypher Manual -> deprecations-additions-removals-compatibility/ 


Bug fixes

Server

  • Fixed an issue where notification filters set on the driver session were dropped when a query was forwarded via server-side routing, causing suppressed notifications to still be returned to the client.
  • Fixed an issue where creating a vector index when setting `vector.quantization.enabled`: false without `vector.quantization.type`: ‘NONE’ in the index configuration. 
  • The backup correctly picks the most recent valid chain when restoring from a folder, which would previously fail if the last backup was an orphaned diff.
  • In neo4j admin import: Added a check to prevent using newlines as delimiters in CSV imports. Newlines as separators were never supported. Their use could cause data corruption.
  • In neo4j admin import: Improve handling of temporal types and fix array construction from lists of temporal types while importing from parquet files.
  • In neo4j admin import: Allow importing from parquet files containing row groups of size 0.
  • Fixed a rendering issue with vector index statements in the neo4j-admin database copy schema cypher file.

Scalability

Clustering

    • When the raft prefetch buffer is reset, the size of the buffer is also now reset

Language

Cypher 25

    • Fixed a bug where EXISTS expression nested in a quantified path pattern would trigger a class cast exception.

Please refer to the changelog for full details of the changes.

 

Bundled products

The following products have been included in the distribution – available in /products directory unless stated otherwise – and are fully compatible with this release. 
  • APOC Core 2026.07.0 – The most popular community library developed for the database, is fully supported (included in Labs directory).
  • Bloom 6.x-2.35.0 – A beautiful and expressive data visualization tool to quickly explore and interact with Neo4j’s graph data platform – no coding required. Please refer to the release notes for details.  (Requires a License)
  • Browser 2026.07.31+0  – Neo4j Browser is a tool for developers to interact with the graph. It is the default interface for both Enterprise and Community Editions (included in the /libs directory) of the Neo4j database. 
  • Neo4j GenAI Plugin 2026.07.0 – Neo4j’s GenAI plugin provides functions and procedures to interact with external AI providers through Cypher, such as for creating vector embeddings and generating text.
  • Neo4j Graph Data Science 2026.07.0 is a compatible version of the connected data analytics and machine learning platform that helps you understand the connections in big data to answer critical questions and improve predictions. Please refer to the release notes for further details. (GDS Enterprise requires a License. )
  • Enterprise Fleet Management is no longer bundled with the DBMS package as it is now included in Neo4j.
  • Neo4j Ops Manager 1.15.2 is a UI-based tool that enables Administrators to operate and observe all of their Neo4j Database Management Servers. Now includes support for Neo4j’s any-to-any upgrade. Please refer to the release notes for details. (Included in Enterprise).
 

Advanced notice of upcoming changes

Query Log Default Format

The default query log format for new installations will change after the next Long Term Support (LTS) release. At the moment, it is set to PLAIN format by default. From the release after the next LTS, the default will be JSON format. If you are upgrading and preserving your current server-logs.xml file, then there will be no change, as support for PLAIN will remain, only the default value for new installations is changing. We recommend moving to JSON for query logging as it contains more information, though the resulting log file size will increase.  

High_limit store format

Heads-up: High_limit store format removal after the next LTS The High_limit store format was deprecated in Neo4j 5.23. The upcoming long-term support (LTS) release will be the final version to support reading, writing, and migrating High_limit databases. Beyond that LTS, Neo4j will not start if it detects a High_limit store. Please take note of the following:
  • The next LTS is the last supported migration window. Reading, writing, and migrating High_limit databases remains supported until the next LTS release only.
  • Databases using the High_limit format will fail to start after the next LTS. No fallback or compatibility layer will be available.
  • Migration to the Block format is required before upgrading beyond the next LTS. We strongly recommend planning and completing your offline migration during or prior to your upgrade to that LTS release.