{"id":21123,"date":"2026-10-21T02:55:17","date_gmt":"2026-10-21T02:55:17","guid":{"rendered":"https:\/\/www.hostinger.com\/support\/?p=21123"},"modified":"2026-10-21T03:49:58","modified_gmt":"2026-10-21T03:49:58","slug":"how-to-fix-503-and-too-many-processes-errors-on-node-js-websites-at-hostinger","status":"publish","type":"post","link":"https:\/\/www.hostinger.com\/support\/how-to-fix-503-and-too-many-processes-errors-on-node-js-websites-at-hostinger\/","title":{"rendered":"How to fix 503 and too many processes errors on Node.js websites at Hostinger"},"content":{"rendered":"<p>A Node.js 503 error or a &ldquo;too many processes&rdquo; error at Hostinger usually means your hosting plan reached its process limit (NPROC) or memory limit. To fix it, stop the running processes, restart or redeploy the app, and then check the logs for the cause. If the limit is reached repeatedly, reduce the number of Node.js apps or upgrade your hosting plan.<\/p><h3><b>Before you start<\/b><\/h3><ul>\n<li>This article covers Node.js websites. For 503 errors on WordPress or PHP websites, see <a data-click-id=\"hgr-post-content-link-how-to-fix-the-503-error-at-hostinger\" href=\"https:\/\/www.hostinger.com\/support\/3417446-how-to-fix-the-503-error-at-hostinger\/\">how to fix the 503 error at Hostinger<\/a>.<\/li>\n<\/ul><h2 id=\"h-why-node-js-websites-reach-the-process-limit\">Why Node.js websites reach the process limit<\/h2><p>The process limit (NPROC) is the number of processes and threads your whole hosting plan can run at once. All websites on the plan share this one limit, including WordPress and PHP websites.<\/p><p>Node.js websites use the process limit faster than other websites for five reasons:<\/p><ul>\n<li>Each Node.js app runs as its own process.<\/li>\n<li><code>domain.tld<\/code> and <code>www.domain.tld<\/code> each run a separate process.<\/li>\n<li>One Next.js app can use about 10&ndash;11 threads.<\/li>\n<li>Older deployments could leave previous copies of the app running. New deployments no longer do this, but existing copies keep running until the app is restarted.<\/li>\n<li>Apps that start their own child processes, for example an Express.js server that starts Next.js, can leave one extra process behind on every restart.<\/li>\n<\/ul><h2 id=\"h-bring-a-node-js-website-back-online\">Bring a Node.js website back online<\/h2><h3>Step 1 &ndash; Stop running processes<\/h3><p>Open the <b>Resource Usage<\/b> page of your hosting plan and click <b>Stop running processes<\/b>. This frees the process limit for all websites on the plan. See <a data-click-id=\"hgr-post-content-link-how-to-check-resource-usage-in-hostinger\" href=\"https:\/\/www.hostinger.com\/support\/2436138-how-to-check-resource-usage-in-hostinger\/\">how to check resource usage in Hostinger<\/a>.<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-21127\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/10\/2026-10-21_09-56.png\" alt=\"\" width=\"1627\" height=\"748\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/10\/2026-10-21_09-56.png 1627w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/10\/2026-10-21_09-56-300x138.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/10\/2026-10-21_09-56-1024x471.png 1024w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/10\/2026-10-21_09-56-768x353.png 768w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/10\/2026-10-21_09-56-1536x706.png 1536w\" sizes=\"(max-width: 1627px) 100vw, 1627px\" \/><\/p><h3>Step 2 &ndash; Restart or redeploy the app<\/h3><p>Open the website dashboard of your Node.js app, click <b>Running<\/b>, and select <b>Restart<\/b>. If the app still doesn&rsquo;t load, <a data-click-id=\"hgr-post-content-link-redeploy-the-node-js-application\" href=\"https:\/\/www.hostinger.com\/support\/how-to-redeploy-a-node-js-application\/\">redeploy the Node.js application<\/a>.<\/p><p><img decoding=\"async\" class=\"alignnone size-full wp-image-21128\" src=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/10\/2026-10-21_09-56_1.png\" alt=\"\" width=\"1622\" height=\"735\" srcset=\"https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/10\/2026-10-21_09-56_1.png 1622w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/10\/2026-10-21_09-56_1-300x136.png 300w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/10\/2026-10-21_09-56_1-1024x464.png 1024w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/10\/2026-10-21_09-56_1-768x348.png 768w, https:\/\/www.hostinger.com\/support\/wp-content\/uploads\/sites\/55\/2026\/10\/2026-10-21_09-56_1-1536x696.png 1536w\" sizes=\"(max-width: 1622px) 100vw, 1622px\" \/><\/p><p><b>NOTE<\/b><\/p><ul>\n<li>The <b>Restart<\/b> option is available only for server-side apps such as Express.js, Next.js and NestJS. Static front-end apps don&rsquo;t run a Node.js process.<\/li>\n<\/ul><h2 id=\"h-find-the-error-behind-a-node-js-503-error\">Find the error behind a Node.js 503 error<\/h2><p>There are three places to check for the error that stopped your Node.js app:<\/p><ul>\n<li><b>Runtime logs<\/b> in the website dashboard show crashes, unhandled errors, missing environment variables, and port conflicts such as <code>EADDRINUSE<\/code>. See <a data-click-id=\"hgr-post-content-link-how-to-use-node-js-runtime-logs-at-hostinger\" href=\"https:\/\/www.hostinger.com\/support\/how-to-use-node-js-runtime-logs-at-hostinger\/\">how to use Node.js runtime logs at Hostinger<\/a>.<\/li>\n<li><b>Build logs<\/b> in the <b>Deployments<\/b> section show why the last deployment failed. See <a data-click-id=\"hgr-post-content-link-how-to-troubleshoot-node-js-deployment-build-errors-at-hosti\" href=\"https:\/\/www.hostinger.com\/support\/how-to-troubleshoot-a-failed-node-js-deployment-using-build-logs\/\">how to troubleshoot Node.js deployment build errors at Hostinger<\/a>.<\/li>\n<li>The <code>stderr.log<\/code> file in <code>domains\/domain.tld\/hbuilds\/current\/nodejs<\/code>, which you can open in the <a data-click-id=\"hgr-post-content-link-hostinger-file-manager\" href=\"https:\/\/www.hostinger.com\/support\/4548688-basic-actions-in-the-file-manager-in-hostinger\/\">Hostinger File Manager<\/a>, holds raw error output. An empty <code>stderr.log<\/code> file doesn&rsquo;t mean there are no errors, because many apps write errors to the runtime logs instead. See <a data-click-id=\"hgr-post-content-link-understanding-empty-stderr-log-in-node-js-applications\" href=\"https:\/\/www.hostinger.com\/support\/understanding-empty-stderr-log-in-node-js-applications\/\">understanding empty stderr.log in Node.js applications<\/a>.<\/li>\n<\/ul><h3>If no error appears in the logs<\/h3><p>Run the app on your own computer with the same Node.js version and <code>NODE_ENV=production<\/code>. The error usually appears there. You can also add an error logger at the top of your app&rsquo;s entry file so uncaught errors are always recorded:<\/p><pre><code>process.on('uncaughtException', (err) =&gt; {\r\n  console.error('Uncaught exception:', err);\r\n});<\/code><\/pre><h2 id=\"h-prevent-repeated-process-limit-errors-on-node-js-websites\">Prevent repeated process limit errors on Node.js websites<\/h2><p>Four changes keep a Node.js app within the process limit:<\/p><ul>\n<li>Don&rsquo;t run cluster mode or PM2 inside your app. Hostinger already starts and manages the Node.js process.<\/li>\n<li>Avoid starting extra child processes from your app.<\/li>\n<li>Apply the Next.js process optimization described in <a data-click-id=\"hgr-post-content-link-how-to-redeploy-a-node-js-application\" href=\"https:\/\/www.hostinger.com\/support\/how-to-redeploy-a-node-js-application\/\">how to redeploy a Node.js application<\/a> if your Next.js app shows high process usage.<\/li>\n<li>Reduce the number of Node.js apps on the plan, or <a data-click-id=\"hgr-post-content-link-upgrade-your-hosting-plan\" href=\"https:\/\/www.hostinger.com\/support\/1583459-how-to-upgrade-a-hosting-plan-at-hostinger\/\">upgrade your hosting plan<\/a> if the limit is reached several times a month.<\/li>\n<\/ul><p>The process limit for each plan is listed in <a data-click-id=\"hgr-post-content-link-hostinger-node-js-hosting-limits-for-web-and-cloud-plans\" href=\"https:\/\/www.hostinger.com\/support\/hostinger-node-js-limits-for-web-and-cloud-plans\/\">Hostinger Node.js hosting limits for web and cloud plans<\/a>. For general guidance on plan limits, see <a data-click-id=\"hgr-post-content-link-what-to-do-if-your-hosting-plan-limits-are-reached-in-hostin\" href=\"https:\/\/www.hostinger.com\/support\/1583532-what-to-do-if-your-hosting-plan-limits-are-reached-in-hostinger\/\">what to do if your hosting plan limits are reached in Hostinger<\/a>.<\/p><p>Once the processes are freed and the app restarts, your Node.js website loads again. Check the <b>Resource Usage<\/b> page regularly to spot the process limit before it causes another 503 error.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bring a Node.js website back online after it reaches the plan\u2019s process or memory limit.<\/p>\n","protected":false},"author":594,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"include_on_kodee":true,"footnotes":""},"categories":[301],"tags":[],"class_list":["post-21123","post","type-post","status-publish","format-standard","hentry","category-node-js"],"hreflangs":[],"include_on_kodee":true,"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/21123","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/users\/594"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/comments?post=21123"}],"version-history":[{"count":5,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/21123\/revisions"}],"predecessor-version":[{"id":21152,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/posts\/21123\/revisions\/21152"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/media?parent=21123"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/categories?post=21123"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/support\/wp-json\/wp\/v2\/tags?post=21123"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}