Website Integration Health Monitor avatar

Website Integration Health Monitor

Pricing

from $10.00 / 1,000 page audits

Go to Apify Store
Website Integration Health Monitor

Website Integration Health Monitor

Audit websites for broken assets, failed requests, and JavaScript errors in a real browser. Detect third-party integrations that silently stop working, and schedule repeat checks for a regression report and a health score on every page.

Pricing

from $10.00 / 1,000 page audits

Rating

0.0

(0)

Developer

Pavan

Pavan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

9 days ago

Last modified

Categories

Share

Website Integration Health Monitor is a browser-based QA and monitoring tool for developers and agencies. It opens each page in a real browser, watches everything that loads, and flags broken behavior before a customer or teammate finds it: failed requests, JavaScript errors, broken assets, and third-party integrations that load but stop working silently.

Run it once as a production smoke test, or schedule it to run on a recurring basis and get a regression report on every check: which issues are new, which are still broken, and which have been resolved since the last run.

Enter one or more start URLs, run the Actor, and open the Output or Dataset tab to inspect a result for each audited page.

What does the audit check?

  • HTTP 4xx and 5xx responses, failed network requests, and broken images or other page assets
  • Browser console errors and uncaught JavaScript exceptions; console warnings are optional
  • Whether a page's third-party scripts are not just present, but actually active — for example, whether a loaded analytics script sends its expected tracking request, or a loaded payment script actually exposes a working checkout element
  • A severity summary and a heuristic page health score from 0–100, so a QA pipeline or dashboard can track site reliability as a single number over time

The Actor reports LOADED_BUT_INACTIVE when a supported script loads but its expected activity is not observed during the visit. This is a signal to investigate, not proof of a broken setup — consent choices, delayed events, and user actions can affect the result.

This Actor recognizes 16 commonly used integrations across analytics, payments, chat/support, and forms (full list in the Supported integrations section below). For providers outside the deeper activity checks, the Actor still reports observed requests and failures.

How do I run a website health check?

  1. Enter a page in Start URLs. To try a public demonstration, use https://the-internet.herokuapp.com/broken_images.
  2. For a one-page trial, set Max pages per site to 1 and turn off Follow same-origin links. Increase the limit when you want to audit more pages.
  3. Click Start or Run and review the results in Output or Dataset. Each result includes an audit status, health score when conclusive, integration summary, issues, and diagnostics.
  4. Open an issue's URL and message to investigate it on the site. Re-run after making a fix to confirm the regression is resolved.

Example input for the demo page:

{
"startUrls": [{ "url": "https://the-internet.herokuapp.com/broken_images" }],
"maxPagesPerSite": 1,
"followSameOriginLinks": false,
"monitoringMode": true,
"monitorId": "broken-images-demo"
}

How does recurring monitoring work?

This is built to run as a scheduled QA check, not just a one-off scan. Enable Compare with previous audit (monitoringMode) and reuse the same Monitor ID for the same pages. The first completed audit saves a baseline. Later audits label current issues NEW or STILL_BROKEN, list disappeared issues under resolvedIssues, and calculate a healthScoreDelta — giving you a change-over-time regression report instead of a flat snapshot. Save the input as an Apify Task and schedule it for daily or weekly production monitoring.

The baseline is stored in a named Apify key-value store for your account, separately for each monitor ID and page URL. An INCONCLUSIVE audit does not replace the last completed baseline. Avoid running the same monitor ID and URLs simultaneously, because overlapping runs can compare with different saved states.

Here is a shortened example of a repeat result from the demo page. Extra third-party requests may vary between runs:

{
"url": "https://the-internet.herokuapp.com/broken_images",
"auditStatus": "COMPLETED",
"healthScore": 82,
"issueSummary": { "CRITICAL": 0, "HIGH": 0, "MEDIUM": 3, "LOW": 0 },
"issueCount": 3,
"issues": [
{
"type": "BROKEN_ASSET",
"url": "https://the-internet.herokuapp.com/asdf.jpg",
"status": 404,
"severity": "MEDIUM",
"changeStatus": "STILL_BROKEN"
},
{
"type": "BROKEN_ASSET",
"url": "https://the-internet.herokuapp.com/hjkl.jpg",
"status": 404,
"severity": "MEDIUM",
"changeStatus": "STILL_BROKEN"
},
{
"type": "FAILED_REQUEST",
"provider": "Optimizely",
"severity": "MEDIUM",
"changeStatus": "STILL_BROKEN"
}
],
"monitor": { "state": "COMPARED" },
"newIssueCount": 0,
"stillBrokenIssueCount": 3,
"resolvedIssueCount": 0,
"healthScoreDelta": 0
}

How much does a website audit cost?

The current pay-per-event price is $0.01 per page result, plus a small memory-based start charge. Platform usage is included in those event prices. For example, one page result costs about $0.01005; five page results cost about $0.05005. Check the Actor's Pricing tab for the latest rates and any applicable discounts before running it.

An INCONCLUSIVE page still creates a dataset result explaining why the audit could not be trusted, so it counts as a charged page result. A page that fails before a result is saved does not trigger the page-result charge, although the Actor-start charge may still apply. The number of page results depends on your start URLs and crawl settings.

What are the limits of this check?

  • A human-verification or access-block page is marked INCONCLUSIVE and has no health score. Bot protection, consent, geography, authentication, and ad blockers can change what the browser observes.
  • The Actor checks activity during a page visit. It does not click through checkout, submit forms, grant consent, or prove that a payment or analytics configuration works end to end.
  • A missing integration that never loads is not automatically flagged as inactive. The loaded-but-inactive check applies after a recognized loader succeeds.
  • The health score is a weighted summary of observed issues, not a performance benchmark or guarantee of business impact.
  • A page that cannot be opened after retries may have no dataset item; inspect the run log in that case.

Use the findings as a starting point for investigation, and test business-critical flows separately.

Supported integrations

Google Analytics, Google Tag Manager, Meta Pixel, Stripe, PayPal, Razorpay, HubSpot, Intercom, reCAPTCHA, Google Maps, Hotjar, Microsoft Clarity, Optimizely, Cloudinary, Shopify, Firebase.