# Page Monitoring: Overview

Page Monitoring watches the pages that you select and tells you when something on them changes, with the value before and after. Use it for the pages that you cannot afford to break, for example your pricing page, checkout, top landing pages or legal text.

## What Page Monitoring does [#what-page-monitoring-does]

A small change on an important page can cost you traffic or sales. A CMS update can add a noindex tag. A developer can change a redirect. A price can change by mistake. Page Monitoring finds these changes:

1. You add the pages to watch. Enter the addresses, upload a CSV file, or click **Watch in Page Monitoring** in another module. See [Pages](/page-monitoring/pages#add-pages).
2. VitalSentinel checks each page on a schedule. You select how often for each page, for example every 24 hours. Each check reads the HTML that your server sends. It also loads the page in a browser to see the page after JavaScript runs.
3. VitalSentinel compares each check with the previous check. It records each change, for example "Now set to noindex" or "Title changed".
4. Changes that can hurt the page in search or for visitors get the flag **Needs attention**.
5. The [Changes](/page-monitoring/changes) page lists all changes. [Alerts](/domain/alerts) and the email digest tell you about the changes that you select.

The first check records the starting point. Changes show from the second check.

## Before you start [#before-you-start]

- **Ownership verification.** Page Monitoring starts only after you [verify that you own the domain](/getting-started/domain-setup/verify-ownership). VitalSentinel does not fetch or store any page before that. Until then, the module shows the chip **Domain not verified** and the headline "Verify your domain to hear when your important pages change". Watching starts right after verification.
- **Where to find it.** Open a domain. In the **Site checks** group of the sidebar, select **Page Monitoring**. It has three pages: **Pages**, **Changes** and **Settings**. The **Pages** page opens first. Page Monitoring has no separate overview screen.
- **Roles.** Workspace owners and admins can add pages, change settings, stop watching pages and act on changes. Members can see the watched pages and the changes. Members do not see the **Settings** page, and the settings of a watched page are read-only for them.

## The Page Monitoring pages [#the-page-monitoring-pages]

| Page | What it shows |
|------|---------------|
| [**Pages**](/page-monitoring/pages) | The watched pages, their status, the **Add pages** button, and the panel of each watched page |
| [**Changes**](/page-monitoring/changes) | All changes on all watched pages, grouped by day, newest first |
| [**Settings**](/page-monitoring/settings) | The default check interval, the top pages list and the ignored changes |

A watched page opens in a panel that slides in over the page that you are on. The panel has three tabs: **Changes**, **Page details** and **Settings**.

## What VitalSentinel checks on a page [#what-vitalsentinel-checks-on-a-page]

Each check records the fields of the page two times: in the HTML that your server sends, and after JavaScript runs.

| Area | Fields |
|------|--------|
| Loading and redirects | HTTP status, error pages, short outages, redirects and the redirect target |
| Indexing | Meta robots, `X-Robots-Tag`, noindex, canonical (tag and HTTP header), the robots.txt verdict for Googlebot |
| Search basics | Title, meta description, H1 and other headings |
| Language | Page language and hreflang links |
| Structured data | Structured data types, errors and key properties |
| Content | The main text and its word count |
| Links and images | Navigation links, links in the main content, links to other sites, images, images without alt text, broken images |
| Scripts | Analytics tags and third-party scripts |
| Rendering | Blank pages, failed renders, JavaScript errors, files that failed to load, and AI readability |
| Response headers and speed | Content type, compression, HSTS, caching, `Vary`, Content Security Policy, `Link` header, viewport, [time to first byte (TTFB)](/help/glossary#ttfb-time-to-first-byte) and page size |
| Your elements | Parts of the page that you select with a CSS selector, for example a price. See [Page elements](/page-monitoring/pages#page-elements) |

Some changes are routine, for example links that change with the content or a small speed difference. VitalSentinel records them, but it shows them collapsed. Routine changes never get the **Needs attention** flag.

## Page Monitoring and Site Health Monitoring [#page-monitoring-and-site-health-monitoring]

Both modules use the same crawler, but they do different jobs:

| | Page Monitoring | [Site Health Monitoring](/site-health/overview) |
|---|---|---|
| Pages | The pages that you select | A sample of pages from your whole site |
| What it reports | Every change on each page | Problems that affect many pages |
| Schedule | The interval that you select for each page | Each page about once every few days, all day |

A page can be in both modules. The serious changes on watched pages also show as issues in Site Health Monitoring. When Site Health Monitoring has open issues from Page Monitoring, a banner shows on the **Pages** and **Changes** pages. It shows the number of issues by severity and the button **Open in Site Health Monitoring**.

## The crawler [#the-crawler]

Page Monitoring uses the VitalSentinel crawler, with the user agent `VitalSentinel Bot/1.2 (+https://www.vitalsentinel.com/bot)`. The crawler obeys your robots.txt. If robots.txt blocks a watched page for the crawler, the page shows **Blocked by robots.txt** and VitalSentinel cannot check it. To check the page, allow `VitalSentinel-Bot` in robots.txt.

If a firewall blocks the crawler, the red crawler banner shows on every page of the domain. See [Crawler access](/site-health/settings#crawler-access) and [Monitoring IPs](/help/monitoring-ips).

## Plans and limits [#plans-and-limits]

Page Monitoring is available on every plan. These numbers depend on your plan:

- The number of watched pages. VitalSentinel counts the watched pages for the whole workspace, for all domains. A page that VitalSentinel paused because the plan is full or because it left your top pages does not count.
- The check intervals that you can select, for example every 24 hours or more often.
- The number of elements that you can watch on each page.
- How long VitalSentinel keeps the stored checks and changes.

When the workspace reaches its limit of watched pages, the **Add pages** dialog shows "You are watching as many pages as your plan allows. Remove a page or upgrade to add more." See [Billing](/workspace/billing) to compare plans.

If you downgrade, VitalSentinel pauses the watched pages over the new limit. These pages show **Paused – plan full**. When there is room again, open the page and resume it.

## Troubleshooting [#troubleshooting]

### Why does Page Monitoring show no changes on a new page? [#why-does-page-monitoring-show-no-changes-on-a-new-page]

The first check records the starting point. Changes show from the second check. The page shows **First check running** until the first check is complete.

### Why can I not add more pages to Page Monitoring? [#why-can-i-not-add-more-pages-to-page-monitoring]

Your workspace uses all the watched pages of your plan. Stop watching pages that you do not need, or upgrade your plan. See [Billing](/workspace/billing).

### Why do I not see the Settings page of Page Monitoring? [#why-do-i-not-see-the-settings-page-of-page-monitoring]

The **Settings** page is for workspace owners and admins only. If you are a member, ask an owner or admin to change the settings.

## Related [#related]

- [Pages](/page-monitoring/pages) - add pages and read the watched page panel
- [Changes](/page-monitoring/changes) - the change feed and the kinds of change
- [Settings](/page-monitoring/settings) - defaults, top pages and ignored changes
- [Alerts](/domain/alerts) - get an alert when a watched page changes
- [Site Health Monitoring](/site-health/overview) - problems that affect many pages
- [Content changes](/google-search-console/content-changes) - changes next to their Google clicks
