Measure how long a page takes to load and render in a real browser, with Core Web Vitals, a request waterfall, and Lighthouse scores for every monitor.
In addition to the standard HTTP check, Cloudmon supports browser-based page load monitoring. This uses a real browser engine to load the full page, including all JavaScript, CSS, images, and third-party resources, and measures the complete rendering experience as a user would see it.
The distinction from standard Website monitoring is scope. A standard website check measures whether the server responded and how quickly. Page Load monitoring measures the full page render time, which includes JavaScript framework execution, third-party script loading, image rendering, and any dynamic content that only appears after the initial HTML is returned. A page can return a 200 status code in 300ms and still take 8 seconds to become usable for the end user.
To open the monitors list, navigate to Digital Experience → Synthetic → Web → Page Load. Status tiles show the Total, Up, Down, Critical, Trouble, Attention, Error, and Not Monitored counts. The list shows one row for each monitor.
Page Load monitors use the browser bot, which is installed on the Controller. The browser bot is an automated browser that loads a page the way a visitor's browser does, so the results reflect what a user would experience.
To install the browser bot, run the following command on the Controller server:
cloudmon install browser-bot
Use the search box to find a monitor, and switch between views with the view selector. Each row has the following columns.
| Column | Description |
| Name | The monitor name. Select it to open the monitor detail page. |
| URL | The page being monitored. |
| State | The current state of the monitor. |
| Probe | The Probe that loads the page. |
| Load time | The most recent page load time. |
| DOM ready | The most recent time taken for the DOM to become ready, with a bar for quick comparison. |
| Requests | The number of failed requests out of the total requests made while loading the page. |
| Last Polled | When the monitor last ran. |
| Actions | A toggle, an edit icon, and a delete icon for the monitor. |
Monitor Details fields:
| Field | Description |
| Probe | The Probe that loads the page (required). |
| Display Name | A friendly name for the monitor (required). |
| URL | The address of the page to load (required). |
Browser Settings fields:
| Field | Description |
| Browser Type | The browser used to load the page. |
| Network Throttle | Limits the network speed used while loading the page. The default is No Throttling. |
| Device Type | Mobile, Tablet, or Desktop. |
| Screen Resolution | The screen size the browser emulates (required). |
| Capture Screenshot | Turns screenshot capture on or off. Captured screenshots appear on the Screenshot tab. |
| Browser Permissions | Separate toggles for Allow Camera Access, Allow Microphone Access, and Allow Geolocation Access. |
Request Settings fields:
| Field | Description |
| HTTP Method | GET or POST. |
| Query Parameters | Parameters added to the request, for example id=10&name=test. |
| Request Headers | Custom headers for the request. Add each one with the plus icon. |
| User Agent | A custom user agent string. |
| Follow HTTP Redirects | Turns redirect handling on or off. |
| Trust Server SSL Certificate | Turns trust of the server SSL certificate on or off. |
| Accepted HTTP Status Codes | The status codes treated as successful, for example 200,301,302. |
| Resource Controls | DNS Override, Block Domains, and Block Resources. Add each entry with the plus icon. |
| Connection Timeout (s) | The connection timeout in seconds (required). |
| Web Credentials | A saved credential to use when loading the page. |
Content Checks fields:
| Field | Description |
| Should contain | Text that must be present on the page. |
| Should not contain | Text that must not appear on the page. |
| Case sensitive | Makes the text checks case sensitive. |
| Should match regular expression | A pattern the page content must match, in the form /pattern/flags. |
| Should not match regular expression | A pattern the page content must not match, in the form /pattern/flags. |
| Verify the presence of string in an element | Checks for a string inside a page element. Add each check with the plus icon. |
| Landing URL | The URL expected after redirects. |
| Link Validation | Checks links on the page. Add each one with the plus icon. |
Configuration Details fields:
| Field | Description |
| Interval | How often the page is loaded (required). |
| Groups | The groups the monitor belongs to. |
| Depends on | Other monitors this monitor depends on. |
| Tags | Tags for the monitor. |
Alert Settings fields:
| Field | Description |
| Alarm Rule | The alarm rule applied to the monitor. |
| User Groups | The user groups notified. |
| Integrations | The integrations notified. |
Select a monitor name in the list to open its detail page. The header shows the monitor name, its state, the URL, the Probe, and the browser. Use the time range selector in the header to change the period shown. The detail page has the following tabs.
| Tab | What it shows |
| Overview | Availability, Downtime, Performance Score, Page Load Time, and Alarms. The Page Load Flow shows each stage of the load: Navigation start, TTFB, Content download, FCP, Start render, DOM interactive, and Page Fully Loaded. Core Web Vitals show First Contentful Paint, Largest Contentful Paint, and Cumulative Layout Shift. Resource Health shows Page Size, Requests, Failed, and Unsecure. |
| Performance | Performance Metrics: Performance score, Page load time, TTFB, Start render, Document complete, and DOM Interactive. Core Web Vitals: FCP, LCP, CLS, and INP. Charts show the Page Load Time Breakdown (Page Load Time, DNS Time, Connection Time, SSL Handshake Time, First Byte Time, and Download Time), the Performance Score, the Web Vitals, and Cumulative Layout Shift over time. |
| Domain | Total Request by Domain and Duration by Domain charts, and a Domain Summary table with Domain, IP address, Requests, Total size, Avg load time, and Avg throughput. |
| Resources | Failed resources, Unsecure resources, CDN hits, JS heap used, and Heap size limit. A Resources Summary table filtered by All, Failed, or Unsecure lists each resource type with its total requests. The Content by Request and Content by Size charts show the same breakdown over time. |
| HAR Analysis | A record of every network request the browser made while loading the page, shown as a Waterfall or a Table. Filter by All, XHR, JS, CSS, Img, Media, Font, HTML, Other, or Errors. Each request shows its Name, Status, Method, Time, Size, Type, and position on the timeline. This makes it straightforward to identify which resource is blocking the render path, which third-party script is adding latency, and which assets would benefit from caching or compression. |
| Screenshot | A screenshot of the page as the browser rendered it, with its size and the time it was generated. Available when Capture Screenshot is turned on. |
| Lighthouse | A Lighthouse report for the page with scores for Performance, Accessibility, Best Practices, and SEO. The Performance section shows First Contentful Paint, Largest Contentful Paint, Total Blocking Time, Cumulative Layout Shift, and Speed Index, followed by Insights, Diagnostics, and Passed audits. The other sections list their audits by group. The report shows the time it was generated. |
| Log Report | One row for each poll, with the page load timing broken into its parts, including Page Load Time, Document Complete, Start Render, DOM Time, First Contentful Paint, Largest Contentful Paint, Cumulative Layout Shift, DNS Time, Connection Time, and SSL Handshake Time. |
| Outages | A timeline and a table of outages with Start Time, End Time, Duration, and Reason. |
| Alarms | The monitor alarms, with Description, Severity, and Opened At. Use the selector to switch between open alarms and other alarm views. |
Using Monitor Detail to investigate an issue:
| Issue | What to check |
| The page loads slowly | Start on the Overview tab and read the Page Load Flow to see which stage takes the longest. Then open the Performance tab, where the Page Load Time Breakdown separates DNS Time, Connection Time, SSL Handshake Time, First Byte Time, and Download Time. A long First Byte Time points to the server response, while a long Download Time points to the size of what is being fetched. |
| The page feels unstable or slow to respond | Open the Performance tab and check the Core Web Vitals. Cumulative Layout Shift shows content that moves while the page loads, Largest Contentful Paint shows how quickly the main content appears, and Interaction to Next Paint shows how quickly the page responds to input. |
| A third-party service slows the page down | Open the Domain tab. The Duration by Domain chart and the Domain Summary table show how many requests each domain serves and its average load time. Then open HAR Analysis and filter by JS or XHR to find the individual requests. |
| Parts of the page are missing or broken | Open the Resources tab and check Failed resources. Set the Resources Summary filter to Failed to see which resource types are affected. In HAR Analysis, filter by Errors to find the exact requests and their Status. |
| Resources load over an insecure connection | Open the Resources tab and check Unsecure resources. Set the Resources Summary filter to Unsecure to list the affected resource types. |
| The monitor is Down | Open the Outages tab to see when the outage started and ended and its Reason. Open the Alarms tab to see the alarms raised. Review the Accepted HTTP Status Codes and Content Checks in the monitor settings, because they define which responses and page content the monitor expects. |
| You need to see what a visitor saw | Open the Screenshot tab to view the page as the browser rendered it. The tab is available when Capture Screenshot is turned on for the monitor. |
| You want a broader quality review of the page | Open the Lighthouse tab for the Performance, Accessibility, Best Practices, and SEO scores, together with the Insights and Diagnostics lists. |
| You are investigating a past slowdown | Use the time range selector in the header to move to the period in question. Then open the Log Report tab and compare the polls, because each row breaks the page load timing into its parts. |
Select an alarm rule, user groups, and integrations in the Alert Settings section when adding or editing the monitor. Alarm rules support thresholds on Page Load Time and availability.