Windows installation

Before you install Neo4j on Windows, check System Requirements to see if your setup is suitable. If it is not already installed, get OracleJDK 21 or ZuluJDK 21.

Install and start Neo4j

You can install Neo4j on Windows either by downloading and extracting a ZIP archive, by running it as a Windows service, or by using the Windows PowerShell module.

Install Neo4j using a zip archive

  1. Download the Windows Executable 2025.09.0 (zip) release from Neo4j Deployment Center.

  2. Right-click the downloaded file and select Extract All to extract the contents of the archive.

  3. Place the extracted files in a permanent home on your server and set the environment variable NEO4J_HOME to point to the extracted directory, for example, setx NEO4J_HOME "C:\neo4j\neo4j-<NEO4J_VERSION>" to make it easier to refer to it later.

  4. (Recommended) Change the default locations of the data, conf, certificates, licenses, and plugins (if you plan to use custom plugins) directories by setting the environment variable NEO4J_CONF and the respective server.directories.* settings to point to the desired locations.

    Storing your Neo4j files outside NEO4J_HOME will simplify the upgrade process later because you will be able to replace the DBMS binaries without affecting the configuration and state. Otherwise, these Neo4j files will remain in the old installation folder and may be accidentally overwritten during an upgrade or deleted during a subsequent uninstall.

  5. Enterprise Edition Accept either the commercial or the evaluation license agreement. If you are using Community Edition, you can skip this step.

    • Use one of the following options to accept the commercial license agreement. See the Neo4j licensing page for details on the available agreements.

      • Set the environment variable NEO4J_ACCEPT_LICENSE_AGREEMENT=yes.

      • Run %NEO4J_HOME%\bin\neo4j-admin server license --accept-commercial

    • Use one of the following options to accept the Neo4j Evaluation Agreement for Neo4j Software:

      • Set the environment variable NEO4J_ACCEPT_LICENSE_AGREEMENT=eval.

      • Run %NEO4J_HOME%\bin\neo4j-admin server license --accept-evaluation.

  6. Before starting up the database for the first time, it is recommended to use the set-initial-password command of neo4j-admin to define the password for the native user neo4j.

    If the password is not set explicitly using this method, it will be set to the default password neo4j. In that case, you will be prompted to change the default password at first login.
    For more information, see Set an initial password.

  7. Start Neo4j as a console application by running %NEO4J_HOME%\bin\neo4j console in your command prompt.

Install Neo4j as a Windows service

You can install Neo4j as a Windows service.

By default, the Neo4j Windows service runs as the LocalSystem account, which has full access to the system. This is a security risk, and it is recommended to run the service as a user without full LocalSystem privileges.

  1. Create a user account that the Neo4j service will run as using using services.msc, or the sc (Service Control) command. You can use an existing user account, but it must have the Log on as a service right.

  2. Follow the steps in the Install Neo4j using a zip archive section to download and extract the ZIP archive and set up the environment variables.

  3. Run the following command in your command prompt to install the service:

    %NEO4J_HOME%\bin\neo4j windows-service install
  4. Start the Neo4j service by running %NEO4J_HOME%\bin\neo4j start.

When installing a new release of Neo4j, you must first run %NEO4J_HOME%\bin\neo4j windows-service uninstall on any previously installed versions. Then, install the new version using the install command as described above.

Change the Neo4j Windows service configuration

When Neo4j is installed as a service, the Java options are stored in the service configuration file. If you want to change any of these options or environment variables after the service is installed, you must update and restart the service for the changes to take effect. For example, updating the value of server.memory.heap.initial_size in the default neo4j.conf file or by using the NEO4J_CONF environment variable will not automatically apply the changes. The service needs to be updated and restarted to pick them up. To update the service, run %NEO4J_HOME%\bin\neo4j windows-service update. Then restart the service to run it with the new configuration.

The same applies to the path to where Java is installed on the system. If the path changes, for example when upgrading to a new version of Java, it is necessary to run the %NEO4J_HOME%\bin\neo4j windows-service update command and restart the service. Then, the new Java location will be used by the service.

Example 1. Update service example
  1. Install service

    %NEO4J_HOME%\bin\neo4j windows-service install
  2. Change memory configuration

    echo server.memory.heap.initial_size=8g >> conf\neo4j.conf
    echo server.memory.heap.initial_size=16g >> conf\neo4j.conf
  3. Update service

    %NEO4J_HOME%\bin\neo4j windows-service update
  4. Restart service

    %NEO4J_HOME%\bin\neo4j restart

Install Neo4j using PowerShell

The Neo4j PowerShell module allows administrators to install, start, and stop Neo4j Windows® Services, as well as perform various administrative tasks using Neo4j Admin and Cypher Shell. The PowerShell module is installed as part of the ZIP file distributions of Neo4j. It requires PowerShell 5.1 or later (PowerShell 7.x recommended) and is supported on 64-bit Windows operating systems.

  1. Unblock the downloaded Neo4j ZIP file if necessary to be able to import the module:

    1. Right-click on the ZIP file and choose Properties.
      A dialog appears with an Unblock button.

    2. Click the Unblock button to enable the import of the module.

    3. Click Apply and then OK to close the dialog.

  2. Right-click the downloaded file and select Extract All to extract the contents of the archive.

  3. Run the following command from an elevated PowerShell prompt to enable script execution:

    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

    For more information, see About execution policies.

    The PowerShell module displays a warning if it detects that you do not have administrative rights.

  4. Set the environment variable NEO4J_HOME to point to the directory where you have installed Neo4j. For example, you can run the following command in your PowerShell session, assuming you have installed Neo4j in C:\Neo4j:

    $env:NEO4J_HOME = "C:\Neo4j"
  5. Import the Neo4j PowerShell module by running the following command:

    Import-Module $env:NEO4J_HOME\bin\Neo4j-Management.psd1

    This adds the module to the current session.

  6. Once the module is imported, you can start an interactive console version of a Neo4j Server:

    Invoke-Neo4j console

To stop the server, use Ctrl-C in the console window, created by the command.

Inspect the module

  1. Get all available commands in the module by running the following command:

    Get-Command -Module Neo4j-Management

    The output should be similar to the following:

    CommandType  Name              Version    Source
    -----------  ----              -------    ------
    Function     Get-Args          3.0.0      Neo4j-Management
    Function     Invoke-Neo4j      3.0.0      Neo4j-Management
    Function     Invoke-Neo4jAdmin 3.0.0      Neo4j-Management
  2. See what each command does by running the following command, replacing <command-name> with the name of the command you want to inspect, for example, Invoke-Neo4j:

    Get-Help <command-name>
  3. Run the following to see some usage examples of that command:

    Get-Help <command-name> -examples
    Table 1. Usage examples
    Command Description

    Invoke-Neo4j

    Outputs the available commands.

    Invoke-Neo4j status

    Current status of the Neo4j service.

    Invoke-Neo4j windows-service

    Install the service.

    Invoke-Neo4jAdmin

    Available commands for administrative tasks.

The module commands support the common PowerShell parameter of Verbose. You can add -Verbose to any command to get more detailed output.

Access Neo4j

By default, Neo4j Community Edition does not include graph tools such as visualization, data exploration, and monitoring. However, you can use the Neo4j Aura console to access these features for free. No subscription is required.

  1. Sign up or log in to the Aura Console.

  2. On the Instances page, click the Self-managed tab and then + Add deployment button.

  3. Select URL Connection.

  4. Provide a Name and Connection URL. If you have installed Neo4j locally on your system, you can connect to http://localhost:7474.

  5. Click the Connect dropdown to launch various graph tools such as Query, Explore, and Dashboards.

  6. Type the username neo4j and your password or the default password neo4j. You will be prompted to change the latter upon first login.

    Aura add self-managed deployment

You are now connected and can use the Aura Console to run Cypher queries, visualize graphs, and optionally monitor your local Neo4j database in Neo4j Aura. For details, see Get started with Neo4j.

Alternatively, you can use the Neo4j Browser, a web-based user interface for interacting with Neo4j that is included with the Neo4j installation. To access the Neo4j Browser, open a web browser and navigate to http://localhost:7474. Connect using the username neo4j with your password or the default password neo4j. If the default password is used, you will be prompted to change it upon first login.

Uninstall Neo4j

Here are the steps to uninstall Neo4j on Windows:

  1. (Optional) Create a backup to avoid losing your data.

  2. Stop all Neo4j processes by using the Task Manager.

  3. Uninstall the Neo4j Windows service:

    %NEO4J_HOME%\bin\neo4j windows-service uninstall
  4. Delete NEO4J_HOME:

    rmdir NEO4J_HOME