← All errors · ReplitNode & Python runtime errors

Application failed to respond

Exact error

Application failed to respond

What it means

Replit's proxy/health check could not reach your app process on the expected port. The server is not listening where Deployments expect, or it crashed before binding.

Likely causes

How to fix it

  1. Bind to 0.0.0.0 and the PORT environment variable:

    // Node / Express
    const port = process.env.PORT || 3000;
    app.listen(port, '0.0.0.0', () => console.log('listening on', port));
    
    # Python
    # port = int(os.environ.get("PORT", 3000))
    # app.run(host="0.0.0.0", port=port)
  2. Open Publishing → Logs (or Console) for crash stack traces before the health check fails.

  3. If `.replit` defines [[ports]], set localPort to your listen port and externalPort to 80 for the public URL; otherwise remove stale port entries so auto-detection can work.

  4. Confirm Preview works with Run before republishing; missing production Secrets often crash the process only after Publish.

Prevent this next time

Guide: catch outages before your users do.

Tools that help:

Some links on this page are affiliate links: if you sign up or buy through them, FixStack may earn a commission at no extra cost to you. Learn more.

FAQ

What does "Application failed to respond" mean?

Replit's proxy/health check could not reach your app process on the expected port. The server is not listening where Deployments expect, or it crashed before binding.

What usually causes it?

Server bound to localhost/127.0.0.1 instead of 0.0.0.0. Hard-coded port instead of process.env.PORT (or PORT from Secrets). .replit port config (localPort/externalPort) does not match what the app listens on. Process exited or threw during startup before listen().

How do I fix it?

1. Bind to 0.0.0.0 and the PORT environment variable: 2. Open Publishing → Logs (or Console) for crash stack traces before the health check fails. 3. If `.replit` defines [[ports]], set localPort to your listen port and externalPort to 80 for the public URL; otherwise remove stale port entries so auto-detection can work. 4. Confirm Preview works with Run before republishing; missing production Secrets often crash the process only after Publish.

Related errors

Tools that help

  • Railway: Deploy backends and databases; new users get $20 credit.

Some links on this page are affiliate links: if you sign up or buy through them, FixStack may earn a commission at no extra cost to you. Learn more.

Get new fixes weekly

No spam. Unsubscribe anytime. Privacy