How to Monitor JavaScript Errors on a Website: Two Approaches

JavaScript errors can break a website without creating downtime. A page may load, the server may return 200 OK, but the checkout button, signup form, navigation, or entire app screen can stop working while a basic uptime check sees no problem.

Start your 7-day trial — no credit card, free plan after.

Spot the script failures that break features while the page still loads.

Why JavaScript error monitoring matters

Modern websites rely on JavaScript for rendering, state, forms, product data, checkout steps, analytics, personalization, and application behavior. When that JavaScript fails, the page may still respond while the user experience breaks.

Basic uptime monitoring often misses these failures because it checks whether the server responded. JavaScript error monitoring looks at what happens inside a real browser after the page starts loading — capturing runtime crashes and console.error messages that never surface in a simple HTTP check.

How NorthDuty monitors JavaScript errors

Start with the pages where JavaScript failures would hurt most: signup, login, checkout, pricing, product pages, landing pages, dashboards, and forms.

NorthDuty opens each page in a real Chromium browser via Playwright and captures two types of JavaScript errors: page-level runtime errors (uncaught exceptions and unhandled rejections, the pageerror event) and meaningful console.error messages. Both are grouped and surfaced per check run.

JavaScript errors form their own critical error group called Page script. Each new critical group reduces the Errors subscore by 25 points, and Errors accounts for 20% of the overall 0–100 health score. That means recurring JavaScript errors can drop a healthy score noticeably even if the page stays reachable.

Broken-resource detection runs alongside error capture. Missing scripts and failed bundles are common reasons front-end behavior breaks and they appear as a separate group. For the most important flows, user journey monitoring confirms whether an error actually blocks the next customer action.

JavaScript errors that affect business outcomes

Not every console message deserves an alert. Prioritize errors that affect important pages and actions.

Form submit fails

A runtime error prevents lead, demo, account, or checkout forms from completing.

Blank app screen

The application shell crashes and users see an empty page instead of the interface.

Broken CTA behavior

The button is visible, but the click handler no longer routes visitors to the next step.

Missing product or pricing data

A front-end error stops API data from rendering on a revenue-critical page.

Best practices for JavaScript error monitoring

Make JavaScript visibility actionable rather than noisy.

Error-tracking SDK vs scheduled browser check

These are the two ways to find front-end errors, and they find different ones. Most teams eventually run both; which to start with depends on whether you can change the page.

Error-tracking SDK in the pageScheduled browser check
What it seesEvery error your real visitors hit, with their browser and stack traceErrors on the pages and paths you chose to check, on a schedule
Code change neededYes — a script on every page, and usually a build step for source mapsNone — the check loads the page from outside
Catches an error before a visitor doesNo, by definition — it reports errors visitors already hitYes, if the check runs before the next visitor arrives
VolumeHigh, and noisy — browser-extension and third-party noise is most of itLow; one result per run per page
Finds a blank pageOnly if the crash happened to be captured before render stoppedYes — the check asks whether anything visible rendered
Works on a client site you do not controlRarely — someone has to add and keep the scriptYes
Best forDebugging what broke for a specific userKnowing a key page or flow is broken right now

Which one to start with

If you own the codebase and the question is "why did this break for that customer", start with an SDK. Nothing else gives you the stack trace, the release, and the specific browser. Budget a week of tuning to silence extension noise and third-party scripts, or the signal disappears under it.

If you look after sites you did not build — an agency roster, a client's WooCommerce store, a marketing site behind someone else's CMS — start with scheduled checks. You cannot add an SDK to a site you do not deploy, and in most cases you do not need one: you need to know that the checkout page threw an error during last night's plugin update, which an outside check answers without touching the site.

The two also fail differently in the case that matters most. When a JavaScript error stops the page rendering at all, the SDK may never get the chance to report it — the reporting code is on the page that did not finish loading. A check that renders the page and then asks whether any visible content exists does not have that problem, which is why blank-page detection belongs on the outside-in side.

Conclusion

JavaScript errors are a major reason websites break while still appearing online. Monitoring them requires running a real browser — not just checking whether a URL responds — and capturing both uncaught runtime errors and console.error messages.

NorthDuty captures both types in every health check run. They contribute directly to the Errors component of the health score, which weighs 20% of the total. That means JavaScript errors on your most important pages show up as a measurable score drop, not just a silent log entry.

Related NorthDuty Pages

Keep exploring the feature pages and commercial routes connected to this topic.

Related reading

More NorthDuty guides on related website monitoring topics.

Frequently Asked Questions

Short answers that summarize the practical takeaways from this guide.

What is the difference between JavaScript error tracking and JavaScript error monitoring?

In practice the terms are used interchangeably, but they describe two approaches. An error-tracking SDK sits in your page and reports errors real visitors hit, with stack traces. Scheduled error monitoring loads the page from outside on a timer and reports what it sees. The first is for debugging; the second is for knowing a page is broken now.

Can I monitor JavaScript errors without adding a script to my site?

Yes. A scheduled check opens the page in a real browser from outside and captures the console errors, failed resources and failed API calls it sees. That is the only option for sites you do not deploy — client sites, a CMS you do not control — and it needs no code change.

Why didn't my error tracker report the blank page?

Because the reporting code is on the page that failed to load. If a JavaScript error stops execution early enough, the SDK may never initialise or never get to send anything. An outside check that renders the page and asks whether any visible content exists catches that case regardless.

Can JavaScript errors break a website without downtime?

Yes. The server can respond successfully while a front-end error breaks rendering, forms, buttons, or customer journeys. Basic uptime monitoring misses these completely.

Which JavaScript errors should I monitor first?

Prioritize errors on signup, login, checkout, forms, pricing, product pages, dashboards, and other business-critical routes. These are where a JavaScript failure has the clearest business cost.

How does NorthDuty capture JavaScript errors?

NorthDuty opens each page in a real Chromium browser and listens for both page-level runtime errors (uncaught exceptions, unhandled rejections) and console.error messages. Both are grouped and reported in each health check run. JavaScript errors form a critical Page script group that reduces the Errors subscore by 25 points per group, and Errors is 20% of the overall health score.

Start monitoring your website with NorthDuty today.

Use NorthDuty to monitor JavaScript errors on your most important pages and connect front-end failures to page health, API calls, and user journeys.

7 days with Pro features and limits, no credit card — then keep one daily journey on the free plan.