Skip to content
WebInsights

Monitoring a marketing site — uptime, errors and SEO signals

You monitor the site when you know it is down before a customer calls.

A marketing site is down when the home page, the form or Search Console is quiet. An APM dashboard is for an app. It is not monitoring the site.

13 min read
Stylised browser window with performance graphs — uptime, a form and an SEO signal as three lights, not an APM dashboard.

Decision guide

If you are searching for website monitoring, or for how to watch a marketing site, you are usually here: the site 'is running', someone has an uptime badge, and you still discover that the contact form has been dead for a week, that SSL expired on a Sunday, or that Google has stopped fetching the sitemap. Someone buys an APM. Someone puts Pingdom on the home page. Someone looks at PageSpeed once a quarter.

The observability post is about telemetry theatre in an app: traces, dashboards, on-call you do not have. This one is about the public site. A marketing site is not down only when the server answers 500. It is down when the CTA does not send, when Core Web Vitals slip after a campaign, or when Search Console shows a coverage hole you only see once leads are gone. Monitoring here is boring checks. It is not a platform purchase.

TL;DR

The main points

  • A marketing site is down when the home page, the form or the SEO signal is quiet — not only when the host is dead.
  • Uptime on `/` is necessary and not enough. Measure the URL money goes through.
  • Search Console, sitemap and index status are monitoring. A PageSpeed score on a slide is not.
  • An APM dashboard is for an app with request volume. On a marketing site it is often theatre.
  • You need an owner and an alert a human sees — not five tools nobody opens.
  • Campaigns, cookie banners and a new plugin are the weeks the site typically breaks without 'being down'.

Why this matters at all

A site you do not monitor costs weeks you call a 'quiet pipeline'. The form sends to an inbox someone has left. DNS points somewhere the certificate does not cover. A redirect loop after a 'small' URL change. You think the market is cold. The market is hitting a 404, a timeout or an empty thank-you step. That is not a marketing problem first. It is a monitoring problem you have called operations.

Teams buy the wrong medicine. They see a slide with traces, RUM and 'full-stack observability' and draw an APM project on top of a site that gets a few thousand views and one form. Or they do the opposite: they have no check, so the first alert is a customer on LinkedIn. Both cost. One in theatre. The other in weeks you cannot get back in Search Console.

It is also an SEO question, not only an uptime question. Google notices a soft 500, a sitemap that 404s, or a page that suddenly is `noindex`, long before you look in Analytics. If you only measure 'is the server up', you can have a site that answers 200 and has still disappeared from search. Monitoring a marketing site is the boring bridge between operations and what you thought was content.

We write this because 'website monitoring' has become a badge on the status page you buy before you have a sentence about what may break. An honest setup is boring: the home page, the thank-you page, the sitemap, the certificate, Search Console, and a name that gets the mail. Without that sentence you have a dashboard. You do not have monitoring you can defend when someone asks why leads stopped.

What monitoring a marketing site actually is — and what it is not

Monitoring here is the checks that tell you the site is still the site you launched. An HTTP check on the URLs that matter. A synthetic submit on the form, or at least an eye on the endpoint answering. Certificate expiry. That `sitemap.xml` and `robots.txt` are still yours. That Search Console does not have a new coverage hole. That LCP on the home page has not slipped after a hero-video experiment.

It is not observability. Observability is being able to ask the system why it is slow when you have volume and distributed traces. A marketing site in Next.js on Vercel or Cloudflare has logs and a deploy history. That is enough for you to find a bad release. It is not a reason to buy an APM you never open because there is no on-call and no request storm.

It is not Analytics either. Sessions and conversions tell you whether people use the site. They tell you too late that the site was broken — and they tell you nothing if the cookie banner has turned measurement off. First-party analytics after consent is another post. The duty here: you must know the machine works, even when the graph is empty because consent is no.

And it is not a PageSpeed screenshot. A lab score you run before launch is a check. A lab score you run every week on the home page, and react to when LCP slips, is monitoring. A lab score in a pitch deck is theatre. Core Web Vitals in Search Console are closer to the truth than a single run in an incognito window on your fibre connection.

What typically goes wrong when someone says we monitor the site

The first failure is only pinging the home page. The WordPress site answers 200, and wp-admin or a plugin endpoint is down. The Next.js site renders the home page from cache, and the server action that sends the mail fails. A CDN can hold an old 200 long after origin is dead. Ping what the user hits — and what happens when they press send.

The second failure is five tools and no owner. Uptime at the host. Vercel mails in a shared inbox. Search Console at an agency you no longer have. PageSpeed in someone's bookmarks. When something breaks, nobody knows which alert counts. One channel. One name. The rest may exist as evidence. They must not be what you trust at three in the morning — because you do not have a rota anyway. You have a Monday morning.

The third failure is ignoring the weeks the site typically breaks without 'being down'. A cookie banner that blocks the form. A campaign pixel that pushes LCP. A plugin update. A DNS move. A 'small' slug change without a redirect. Monitoring is also a checklist after those changes — not only a cron against the home page. If you deploy without opening Search Console and the form afterwards, you have a hope, not a check.

The fourth failure is buying app monitoring for a brochure. Traces, service maps and an 'error budget' are right when you have a product with users all day. On a marketing site that is how you get a dashboard you are ashamed to open because it is empty or noisy. Take the boring: HTTP, certificate, sitemap, Search Console, one synthetic path. Take APM when you have an app the observability post is actually about.

Uptime badge vs. honest monitoring — two setups, two kinds of Monday

The badge

The home page answers. You think you are covered. You discover the rest too late.

  • HTTP 200 on `/` at the host or an uptime plugin
  • No check on the form, sitemap or certificate
  • Search Console with someone you cannot log in as
  • PageSpeed as a screenshot from launch

Honest monitoring

The URLs and signals that mean the site is still the site.

  • Checks on the home page, thank-you page or form endpoint
  • Certificate, DNS, sitemap and robots — yours, not a 404
  • Search Console as a weekly rhythm, not a museum
  • One alert, one name, and a check after every deploy and campaign

How a small team monitors a marketing site — without an APM project

Without this order you get either a badge or five dashboards nobody owns.

  1. 01

    Write what 'down' means — in five lines

    Not 'the site does not answer'. 'The home page is 5xx or timeout.' 'The form does not post.' 'Sitemap or robots are gone.' 'Search Console shows a new coverage hole on the pages we live on.' If you cannot say that, you are not ready for a tool. You are ready to point at the three URLs that actually matter.

  2. 02

    Put HTTP checks on the URLs money goes through

    Home page. The page the campaign lands on. The thank-you page or the endpoint the form hits. An external check is fine — the host's own, Cloudflare, Vercel, or a boring uptime tool. Do not only ping origin behind the cache if the user hits the edge. Ping what they hit. A 200 from a CDN on yesterday's HTML is not 'up' if origin has been dead since yesterday.

  3. 03

    Watch certificate, DNS, sitemap and robots as yours

    Expiry should mail you weeks before, not as a browser warning at the customer. DNS should point where you think. `sitemap.xml` and `robots.txt` should be the files you think you have — not a plugin default or a 404 after a relaunch. These are the checks that catch 'we moved the site and forgot to move what Google fetches'.

  4. 04

    Make Search Console a rhythm, not a museum

    Coverage, page experience, and whether the sitemap is still being read. You do not need a dashboard that mirrors it. You need a person who opens it after deploys and on a fixed weekly rhythm. A coverage hole you see the same week, you can fix. A hole you see in a quarterly meeting has already become your new baseline.

  5. 05

    Give the alert a name — and a check after every change

    Owner is a name, not 'marketing and ops'. Alert is one channel a human sees: mail, Slack, PagerDuty if you actually have a rota. After deploy, cookie change, campaign pixel and plugin update: open the home page, submit the form, look at LCP and Search Console. Without that check the cron is an alibi.

“You monitor a marketing site when you know the form is dead before the pipeline is.”

WordPress, Next.js and campaign weeks — the same duty, different breaks

A WordPress site typically dies in the plugin layer. An update, a contact-form plugin that stops sending, a cache plugin that serves an old 200, a security plugin that blocks POST. Monitor admin if you must, but especially monitor the public POST and the thank-you page you think exists. Uptime on the home page is the check WordPress misses most often.

A Next.js site on Vercel or Cloudflare typically dies in a bad deploy, a missing env var, or an edge cache that holds an error. Preview deploys catch some of it. They do not catch that production is missing the secret preview had, or that a redirect in `next.config` has hit an old URL Search Console still loves. Deploy mails are evidence. They are not monitoring until a human has a check from the outside.

Campaign weeks are the third way the site breaks. A tag-manager container, a chat widget, a full-bleed hero, an A/B tool. LCP slips. The form waits on a script that did not arrive. The cookie banner double-blocks. Here PageSpeed and a real submit — not an uptime badge — are what tell you that you have bought traffic to a site you made heavy yourself.

If you are considering 'getting monitoring under control' by buying the same stack as the app, be honest: you are buying a language you will not speak every day. A marketing site needs boring checks and a Monday rhythm. An app needs traces. Mix them and you get an expensive dashboard for the site and a site you still discover is broken via a customer.

What you should typically do in the situation you are in

The left is what you typically say. The right is the next step we typically recommend.

  • Situation

    We have uptime on the home page, and leads have suddenly stopped

    Next step

    Check the form and the thank-you page. The home page 200 has not monitored the business

  • Situation

    We want to buy APM so we are 'covered'

    Next step

    Write what down means. If it is HTTP, certificate and GSC, APM is a dashboard you will not open

  • Situation

    Search Console sits with a previous agency

    Next step

    Move ownership before you buy more monitoring. A hole you cannot see, you cannot fix

  • Situation

    We deploy every week and never look at the site afterwards

    Next step

    An external check plus a real submit after release. Cron alone is an alibi

  • Situation

    We have both a marketing site and an app

    Next step

    Two setups. Boring checks on the site. Observability on the app. One shared APM is how the site gets forgotten

Checklist before you call the site monitored

If you are missing several of these, the sentence is monitoring — the setup is a badge.

  • You can say what down means without opening a dashboard
  • There is an external HTTP check on the home page and on the URL that takes leads
  • Certificate, sitemap and robots alert before the customer does
  • Search Console is yours, and someone opens it on a fixed rhythm
  • One named person gets the alert — not five inboxes
  • After deploy and campaign: home page, form, an eye on LCP — not only a green build

Questions we get again and again

  • What should we monitor on a marketing site?

    The home page, the URL that takes leads, the certificate, the sitemap, robots, and Search Console. That is the list. Uptime on `/` alone is a badge. An APM is for an app. PageSpeed is useful as a rhythm on LCP, not as a screenshot from launch. If you can only buy one thing, buy an external check on the form path and ownership of Search Console. You can add the rest. You cannot honestly add a dashboard you do not have a sentence for.

  • Is website monitoring the same as observability?

    No. Monitoring here is checks that say the site is still the site. Observability is being able to ask an app why it is slow when you have volume. We have written about observability theatre elsewhere — traces and dashboards you do not have on-call for. A marketing site should not inherit that setup. It should inherit the boring URL checks and a weekly rhythm in Search Console. Mix them and you pay for a language the site does not speak.

  • How do we know the contact form works without spamming ourselves?

    A synthetic submit to a test endpoint, or a real submit you do yourselves after every deploy, beats a hope. Some teams send to a dedicated inbox and alert if no mail has arrived in a day — it is crude, and it catches 'the plugin is not sending'. A 200 on the form page does not catch that POST fails. If you do not want to automate, make the real submit part of the release check. It is five minutes. It is cheaper than a quiet week.

  • How often should we look at Search Console if the site 'just runs'?

    After every change that touches URLs, sitemap, robots or rendering — and on a fixed weekly rhythm anyway. You do not need to sit in it every day. You need to see a new coverage hole while you can still point at the release that made it. A quarterly look is how a `noindex` on a template becomes your new normal. Search Console is monitoring when someone owns it. It is a museum when login sits with an agency you no longer pay.

  • Do we need a status page and on-call for a marketing site?

    A status page is honest if you have customers who hit the site as a product. For most marketing sites it is theatre: you do not have a rota, and you will not update it anyway. On-call is right when being down at night costs something you can point at. Otherwise a mail on Monday morning and a human who owns it is the honest setup. Buy the pager when you have an app that runs all day. Do not buy it to look like an ops team on a brochure.

If you have a green badge and a quiet pipeline

Let us separate home-page uptime, the form and the SEO signal.

Three boring checks beat an APM you buy before you have said what down means.

Why we wrote this

This is how we think — and it's what we build.

Our insights are about the work we actually do. If this hit something you're working on, there's a concrete service that lines up.