localhost:3000: what runs on it and how to open it
Port 3000 is the default for React, Next.js, Express, Rails and Grafana. How to open it and what to do when it will not load.
Open this address: http://localhost:3000This opens on your own computer. It only works if the program is running.
localhost:3000 is the address of an app running on port 3000 of your own computer. It is the default port for React, Next.js, Express and Rails, so when it will not open, the app is usually not running yet.
What runs on localhost:3000
- React (Create React App) with
npm start - Next.js with
npm run dev - Node / Express apps that call
app.listen(3000) - Ruby on Rails with
rails server - Grafana, which uses 3000 by default
Commands to start and test port 3000
npm startnpm run devrails serverPORT=3001 npm start$env:PORT=3001; npm startFind what is using port 3000
Run these in a terminal on your computer. Nothing is sent to this site.
If localhost:3000 will not open
- EADDRINUSE: address already in use :::3000
- Another program, often an old dev server in a forgotten terminal, is on port 3000. Find it with the tool below and stop it, or start yours on another port.
- Cannot GET /
- Your Express app is running but has no route for /. Add
app.get("/", ...)or open a route that exists. - This site can’t be reached (ERR_CONNECTION_REFUSED)
- The server is not running. Start it and keep that terminal open. See the full checklist.
- Works on your computer, not on your phone
- Start the server on all network addresses and use your computer’s IP address. See how to open localhost from your phone.
Other ports like 3000
| Port | Usually used by |
|---|---|
| localhost:5173 | Vite dev server |
| localhost:4200 | Angular dev server |
| localhost:5000 | Flask |
| localhost:8000 | Django, PHP, Python |
| localhost:8080 | Tomcat, Spring Boot, Docker |
| localhost:8888 | Jupyter Notebook |
| localhost:9000 | PHP-FPM, SonarQube |
Questions about localhost:3000
- What runs on localhost:3000?
- Most often a React, Next.js, Express or Rails development server, or Grafana. The terminal where you started it shows which one.
- How do I change the port from 3000?
- Set the PORT variable when you start the app, for example PORT=3001 npm start, or change app.listen(3000) in your Express code.
- Is localhost:3000 safe?
- Yes, as long as it stays on localhost. Only your own computer can reach localhost:3000. It becomes reachable from other devices only if you start the program on 0.0.0.0 or your computer's IP address. Development servers are for testing, so do not put them on the public internet.
- Can I use a different port instead of 3000?
- Yes. Most programs let you choose the port with a setting or a command option. Pick a free port above 1024 and open that number instead, for example localhost:3001.
- How do I check what is using port 3000?
- Use the port checker on this page. It shows the command for Windows, macOS and Linux and does not send anything to this site.
- Can I open localhost:3000 from my phone?
- Yes, if both are on the same Wi-Fi. Start the program so it listens on all addresses, then open your computer's IP address with :3000 on the phone. A firewall on the computer can still block it.
Free tools that help
- Common ports listSearch a list of common TCP and UDP port numbers: SSH 22, HTTP 80, HTTPS 443, MySQL 3306, PostgreSQL 5432 and more, with dev server ports.