Solving the “Unexpected token ‘?’” Error in Next.js: A Node.js Version Update

When working with Next.js, encountering errors is not uncommon, but each one can provide an opportunity to learn and improve. One such error that might have left you scratching your head is the “Unexpected token ‘?’” error. Fear not; in this guide, we’ll walk you through the process of resolving this issue by updating your Node.js version using the Node Version Manager (nvm).

Understanding the “Unexpected token ‘?’” Error

The “Unexpected token ‘?’” error in Next.js typically occurs when you are using a Node.js version that doesn’t support certain modern JavaScript features. In this case, it seems that your current Node.js version lacks support for the optional chaining operator (?). To overcome this obstacle, we’ll perform a Node.js version update.

Step 1: Install nvm (Node Version Manager)

  1. Open your terminal and run the following command to download and install nvm:

    curl -o- | bash

    This command fetches the nvm installation script from GitHub and executes it.

  2. After the installation is complete, restart your terminal to ensure that nvm is available in your shell.

Step 2: Install the Required Node.js Version

Now that nvm is up and running, it’s time to install the specific Node.js version that supports the necessary JavaScript features. In this case, we’ll install version 18.12.1. You can replace this version with the one that suits your project’s requirements.

  1. Install Node.js version 18.12.1 by running the following command:

    nvm install v18.12.1

    This command instructs nvm to download and set up Node.js version 18.12.1 for your use.

  2. Once the installation is complete, you can confirm that the desired version is active by running:

    nvm use v18.12.1

    This ensures that you are now using the updated Node.js version.

Step 3: Restart Your Next.js Development Server

With the updated Node.js version in place, you are ready to restart your Next.js development server to see the changes in action.

  1. Start your Next.js development server by running your usual start command, often npm run dev.

    npm run dev

    This command will initiate your Next.js application with the updated Node.js version.

Additional Notes: Exploring Available Node.js Versions

If you ever need to explore the list of available Node.js versions, nvm provides a convenient command for that purpose. You can use the following command to view a complete list of versions to choose from:

nvm list-remote

This command will display all the Node.js versions that are compatible with nvm, allowing you to select the one that best fits your project’s needs.

For further information and troubleshooting, you can refer to the documentation under “Option 3: Installing Node Using the Node Version Manager.”


The “Unexpected token ‘?’” error in Next.js can be swiftly resolved by updating your Node.js version using the Node Version Manager (nvm). This simple yet effective solution ensures that your development environment is equipped with the required JavaScript features, allowing you to continue building your Next.js application with confidence. Don’t let errors hold you back; embrace them as opportunities to learn and grow in your development journey.