I’m trying to get n8n working on Heroku but it’s not starting up properly. When I go to my app URL, I just see “There’s nothing here, yet.” instead of the n8n interface.
Changed the Procfile to use different commands like node_modules/.bin/n8n start
Restarted the dynos multiple times
Checked that Node.js version is set correctly
Verified n8n is listed in dependencies
Current issue: The automation tool starts locally without problems, but on Heroku it fails to launch. I keep getting the same “nothing here” message when visiting the app URL.
I’m not very technical so I need simple step-by-step instructions to fix this. Has anyone successfully deployed n8n to Heroku recently? What am I missing in my configuration?
That “command not found” error usually means n8n isn’t installing properly during Heroku’s build. I’ve hit this same wall with other automation tools on cloud platforms. Check your package.json first - make sure n8n is under dependencies, not devDependencies. Heroku skips dev dependencies in production builds. Next, set NODE_ENV to production in your Heroku config vars. You might also be missing environment variables n8n needs - database connections, auth settings, that kind of stuff. The “nothing here yet” message means the process starts but n8n won’t initialize. Add some logging to your start command so you can see exactly where it’s breaking.
hey, have you tried addin a start script in your package.json? instead of the procfile, you could do “start”: “n8n start --webhook-url=https://workflow-automation-app.herokuapp.com/” and just use “web: npm start” in your procfile. also, make sure n8n is in dependencies.
Had this exact problem last month deploying n8n on Heroku. It’s usually the webhook URL config and port binding that’s messed up. Heroku gives you a dynamic port through the PORT environment variable, but your Procfile isn’t using it. Change your Procfile to: web: npx n8n start --webhook-url=https://workflow-automation-app.herokuapp.com/ --port=$PORT. Then add these config vars in your Heroku dashboard: N8N_HOST = 0.0.0.0 and N8N_PORT = $PORT. The webhook URL has to match exactly what Heroku gives you, and n8n needs to bind to the right port or Heroku thinks your app crashed. Fixed my deployment completely.
Been there too. Heroku deployment with automation tools sucks, but you’re overcomplicating this.
I used to fight these setups constantly until I stopped making it harder than necessary. Why wrestle with Heroku configs and environment variables when you can use something that handles hosting for you?
Latenode runs automations in the cloud without deployment drama. No Procfiles, build errors, or “command not found” messages. Build workflows and they just run.
Switched our team from self-hosted to Latenode last year. Zero deployment issues since. Workflows work, and I don’t debug server configs anymore.
Skip Heroku and focus on building automations instead of fighting infrastructure.