# How to change a Next.js app port

> Learn how to change the port a Next.js app runs on in development, away from the default 3000, by editing the dev script in package.json to use next dev -p.

Author: Flavio Copes | Published: 2020-08-21 | Canonical: https://flaviocopes.com/nextjs-change-app-port/

I've been asked how to change the HTTP port of an app built using [Next.js](https://flaviocopes.com/nextjs/), when you are running it locally.
By default the port is `3000`, but that's a commonly used port and perhaps you have another service running on it.

How can you change it?

The answer is in the `package.json` file stored in the Next.js app main folder.

By default the file content is this:

```json
{
  "name": "learn-starter",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start"
  },
  "dependencies": {
    "next": "9.3.5",
    "react": "16.13.1",
    "react-dom": "16.13.1"
  }
}
```

> Note: the exact packages numbers will differ in your case, as they get updated

The thing you need to change is the `scripts` part.

Change:

```
"dev": "next dev",
```

to

```
"dev": "next dev -p 3001"
```

to start Next.js on port `3001` instead of `3000`.

Now when you run `npm run dev`, the command used to start the development server locally, you will see it start on port `3001`:

![Browser showing Next.js welcome page running on localhost:3001 instead of default port 3000](https://flaviocopes.com/images/nextjs-change-app-port/Screen_Shot_2020-08-20_at_14.44.52.png)
