DEV Community

Nooralto1
Nooralto1

Posted on

Observability for a small business website

Observability for a small business website

A redesign ships, the team moves on to the next project, and the site enters a phase nobody plans
for: the months where nothing about it is actively worked on, but plenty can still quietly break.
Large engineering teams call the discipline that watches for this observability, and treat it as a
first-class part of running a service. A small business site rarely gets the same treatment, not
because the need is different, but because nobody thought to set it up before launch, when it was
cheapest to add.

Uptime is the easy part, and the least useful on its own

A basic uptime check, pinging the homepage every few minutes and alerting if it stops responding,
catches the most dramatic failure and almost nothing else. A site can return 200 OK on its
homepage while the booking form on a different page silently stopped submitting three weeks ago,
because a script update broke the endpoint it posts to. Uptime monitoring answers "is the site
technically online," which is a real but narrow question next to "can a visitor actually do the
thing this site exists for."

Synthetic checks that test the thing that matters

A synthetic check that actually submits a form, on a schedule, against a test address, and confirms
a confirmation email or a webhook fires within a reasonable window, catches the failure uptime
monitoring misses entirely.

// A minimal synthetic check, run every 15 minutes
async function checkContactForm() {
  const res = await fetch('https://example.com/api/contact', {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({
      name: 'Synthetic Check',
      email: 'synthetic-check@example.com',
      message: 'automated check, ignore',
    }),
  });
  if (res.status !== 200) {
    throw new Error(`contact form returned ${res.status}`);
  }
}
Enter fullscreen mode Exit fullscreen mode

Running this against the real endpoint, not a staging copy, is what makes it trustworthy: a check
against staging proves staging works, which was never the question.

Certificate and domain expiry, on a calendar nobody remembers

A TLS certificate or a domain registration expiring is entirely predictable and entirely
preventable, and it is also one of the most common causes of a site going dark with no code change
behind it at all. Auto-renewal handles most of these silently until the one year it does not,
because a payment method expired or a renewal setting changed. A monitor that checks the expiry
date on both, on a weekly schedule, and alerts thirty days out rather than the day of, turns a
guaranteed future incident into a calendar reminder.

Real user metrics, not just lab scores

A performance audit run once, in a lab environment, on a fast connection, describes a version of
the site nobody's actual visitor experiences. Real user monitoring, collecting Core Web Vitals from
actual visits, catches what a lab test cannot: a specific mobile carrier with slow DNS in one
region, a third-party script that only loads slowly for visitors outside the country the site was
tested from, a page that degrades specifically for the segment of traffic converting best. The gap
between a lab score and what real visitors experience is often where a redesign's promised
improvement quietly evaporates in the weeks after launch.

What actually deserves an alert

Monitoring everything sounds safer than monitoring a few things, and it produces the opposite
result: an alert channel nobody reads because most of it is noise, and the one alert that mattered
gets lost in it. A short list, watched consistently, beats a long list ignored after the second
week: the site responds, the primary conversion action (a form, a booking, a checkout) completes
end to end, the certificate has more than thirty days left, and Core Web Vitals for real visitors
have not regressed past a set threshold.

Building this in before launch, not after an incident

Observability set up after the first bad month is observability that arrives too late to prevent it,
only to explain it after the fact. The redesign work at Nooralto
treats this monitoring layer as part of the launch checklist rather than a separate project to
revisit someday, because the cost of wiring a synthetic check and a certificate monitor at launch
is a fraction of what a week of silent downtime costs a business that only finds out when a client
mentions the site looked broken.

A site that nobody is actively watching is not stable. It is untested since the day it shipped, and
the first person to notice a failure is usually a visitor who does not bother reporting it, just
leaves.

Nooralto builds websites and runs search optimisation for businesses, from Agadir and Paris.

Top comments (0)