Back to all databases

Neo4j

A property graph database that stores data as fixed-size records in linked lists for index-free adjacency traversal. Offers community and commercial editions with an extensive graph algorithms library.

Overall rank
#1
First released
2007
License
GPL-3.0
Built with
Java

Details

Vendor
Neo4j Inc
Type
Property Graph
Category
Established
License
GPL-3.0
Language
Java
Query Languages
CypherGQL
Protocols
BoltHTTP/REST

Feature scores

Community & Business

Active development
Updated within last 3 months
Commercial support
Paid support available
Live community
>75% of issues addressed
Open Source
Open source license
Pricing
50%
No description available
Trendiness
Growing or stable trend

Deployment

Containerization
Docker image available
Work as dedicated instance
Can run as standalone server
Work as embedded
Can embed in application
Testing in-memory version
In-memory mode available

Platform

Operating on Linux
Linux officially supported
Operating on Windows
Windows officially supported
SaaS offering
Cloud service available

Operations

Automatic updates
0%
Manual updates only
Client side caching
0%
No client-side caching
Data versioning support
0%
No versioning
Live backups
Hot backup supported

Distribution

Cluster Re-balancing
0%
No auto-rebalancing
Data Distribution
Data sharding supported
High-Availability
HA mechanisms available
Query Distribution
Distributed query execution
Replication support
Replication available

Developer Experience

Data types defined
Composite data types
Logging/Auditing
Event logging supported
Object-Graph Mapper
OGM/ORM available
Reactive programming
Reactive streams supported
Documentation up-to-date
Docs current with latest version
Binary protocol
Binary protocol available
CLI
Command-line interface
GUI
Visual interface available

Data Model

Multi-database
Multi-model database
Graph-native data
Native graph storage
REST API
REST endpoint available
Query Language
Standard query language (Cypher/Gremlin)

Transactions

Granular locking
Object-level locking
Multiple isolation levels
Multiple isolation levels
Read committed transaction
Read committed available
Transaction support
ACID transactions

Schema & Security

Constraints
Full constraint support
Schema support
Schema definition tools
Secondary indexes
Secondary indexes supported
Server side procedures
Stored procedures supported
Triggers
Event triggers supported
Authentication
Authentication supported
Authorization
Role-based access control
Data encryption
0%
No encryption
Sources 5 references

Protocols Bolt, HTTP/REST

Bolt is the primary driver protocol; the transactional HTTP API on port 7474/7473 is deprecated (replaced by the Query API) but still present.

  • Bolt is an application protocol for the execution of database queries via a database query language, such as Cypher.
    Bolt Protocol - Bolt Protocol · reviewed 2026-08-02
  • By default, the API uses port 7474 for HTTP and port 7473 for HTTPS.
    Introduction - HTTP API · reviewed 2026-08-02

Released 2007

Matches current value. Neo4j's own history page dates the open-source 1.0 release to 2007, after seven years of internal development starting in 2000.

Language Java

Matches current value. Neo4j's own docs name Java as the primary implementation language; Scala is also used within the codebase but Java is the language the project leads with.

License GPL-3.0

SPDX identifier as classified by GitHub from the repository licence file.