12 August 2026

How to tell if your contact form has quietly stopped working

The chat and enquiry form on our own website stopped working for a week. Every check we had still said everything was fine — and that is the part worth understanding.

If your website has a contact form, here is a question worth sitting with: if it stopped working tomorrow, how would you find out?

For most small businesses the honest answer is: when somebody eventually rings to ask why nobody got back to them. By then you have lost weeks of enquiries you will never be able to count. We know this failure mode in detail, and it is why the systems we build now shout when they break.

What broke

The forms on our site hand off to an automation platform, and that platform has a monthly limit on how many jobs it will run. We hit the limit.

Not because of customer traffic — because of our own background checks. One of them was set to look for new enquiries every two minutes, around the clock, which works out to 21,600 jobs a month against a plan that allows 2,500. It exhausted the whole allowance in days, and when the allowance ran out, everything stopped. Including the two things a customer actually touches.

In one week we used 4,027 jobs. The plan allows 2,500 a month.

Why nothing warned us

This is the part that generalises to every small business website, so it is the part worth reading.

When that platform refuses a job, it does not return an error. The web address still accepts the request and still answers HTTP 200 — the code that means success. The job dies before it does anything, so the response body is empty, but the status says fine.

Every simple monitoring check asks one question: did it return 200? Ours did. So every check passed, every day, while nothing worked.

It got worse before it got better

When we finally built a proper counter to track usage, it recorded ten calls as successful — because it was checking the status code. We looked at that and reported that the system had recovered.

It had not. All ten had failed. Our own new monitoring had fallen for the same trap it was written to catch, and we passed the bad news on as good news.

What we changed

We stopped trusting the status code. A response is now only counted as success if it actually contains an answer. An empty 200 is treated as a failure, because that is what it is.

We added a circuit breaker. Three dead responses in half an hour and the system stops calling entirely. Calling a service that cannot answer does not help and quietly makes the backlog worse.

We cut the background checking hard. From roughly 888 jobs a day to 44, mostly by noticing that two separate systems were doing the same work and that nothing needed checking at three in the morning.

The bit for your business

You almost certainly have a contact form. Ask one question about it: if it stopped working tomorrow, how would you find out?

For most small businesses the honest answer is "when somebody eventually rings to ask why nobody got back to them", and by then you have lost weeks of enquiries you will never know the size of.

The cheap version of a fix is to send yourself a test enquiry once a fortnight, from your phone, and check it arrives. It takes two minutes. We should have been doing it.

The better version is a form that fails loudly — one that tells the visitor it did not send, keeps what they typed, and gives them a phone number instead of a thank-you page. Ours does that now. It should have from the start.

Want us to look at yours?

The free Growth Check checks your website, your Google listing and how your calls and enquiries are actually handled — then tells you what would move the needle.

Free Growth Check

Want us to look at yours?

Same checks we ran on ourselves, on your business. Free, and you keep the findings either way.