Incidents

Is it us or them? Handling third-party outages in a small team

In late 2025, a single cloud region and then a single CDN's configuration change each took a large slice of the internet's applications down for hours. Most of the affected teams spent the first half hour debugging their own code.

An incident timeline with a vendor status feed showing the upstream cause

When an application fails because a provider it depends on has failed, the most valuable thing a small team can do in the first ten minutes is establish that fact — because it changes every subsequent action: do not deploy, do not restart, do communicate, and do wait. The way to establish it is to have the provider's status on the same timeline as your own incident, automatically, so the incident opens with "Cloudflare reports a widespread outage since 11:20" attached. The AWS us-east-1 failure in October 2025 and the Cloudflare outage in November 2025 each showed the pattern: thousands of applications down, most of their teams initially convinced it was something they had shipped.

Key takeaways
  • The first question is not "what broke?" but "is it us or them?" — and it should be answered by data, not by checking Twitter.
  • Put vendor status feeds on your incident timeline so an incident that coincides with a provider outage says so when it opens.
  • During a dependency outage: do not deploy, do not restart, do communicate. Most self-inflicted damage happens while trying to fix what was not yours.
  • It is still your incident to your users. Attribute it honestly; do not hide behind it.
  • Afterwards, map the dependencies. Every provider you rely on is a component you do not monitor unless you make it one.

The first ten minutes

  1. Check the correlation. Did the incident start within minutes of a provider reporting trouble? If your monitoring shows the vendor's status alongside your incident, this is one glance. If not, it is the provider's status page, then the second provider's, then a news search — while the clock runs.
  2. Check what else is down. If your marketing site on one host is fine and your app on another is not, that narrows it. If both are down and they share a CDN, the CDN is the suspect.
  3. Check your own changes. Was there a deploy in the last hour? If yes and no provider is reporting trouble, it is probably you. Did the deploy break it?
  4. Decide, and say so. "Dependency outage, provider X, no action on our side" or "ours, investigating". Write it down with the time; you will want it for the report.

What not to do during a dependency outage

Communicating it honestly

The status page update is: what users see, that the cause is an outage at a named provider, that there is no action they need to take, and when the next update is due. Do not name-and-blame; do not pretend it is nothing to do with you. "Our payment processing depends on Stripe, which is reporting degraded service since 09:40. Payments may fail. We will update when Stripe confirms recovery." — that is the whole message. The incident update template.

For agency clients, the same message per client, and the monthly SLA report marks the incident as dependency-caused — which matters for whether it counts against the tier, if your terms exclude upstream outages.

Suppressing the noise without hiding the signal

A CDN outage takes down twenty client sites at once. Twenty incidents, twenty alerts, one cause. Monitoring that understands dependencies opens the incidents — they are real; the sites are down — but marks them as explained by the provider and alerts once for the group, rather than paging the owner twenty times about something they cannot fix. The distinction is between suppressing the alert (right) and suppressing the incident (wrong: it still happened, it still goes in the report). Alert fatigue is mostly built from exactly this case.

Reducing the blast radius before the next one

The late-2025 outages did not mostly hurt teams because they depended on a provider — everyone does. They hurt because the teams did not know, for the first half hour, that they did. The full reliability loop.

Quick reference

First questionIs it us or them — answered by vendor status on the incident timeline
DuringNo deploys, no random restarts, no unrehearsed failover; communicate within minutes
AttributionHonest — named provider, no blame, still your incident to your users
Noise ruleSuppress the repeated alert, never the incident
AfterwardsDependency map; providers monitored as components; degrade-not-die paths; one rehearsed failover
Late-2025 lessonMost teams lost the first half hour not knowing it was upstream

Frequently asked questions

How do I know if an outage is my application or a third-party provider?

Check whether the incident started at the same time as trouble reported by a provider you depend on, whether other properties of yours that share that provider are also affected, and whether you deployed in the last hour. Monitoring that shows vendor status feeds on the same timeline as your incidents answers the first question at a glance; without it, the answer comes from status pages and news while the clock runs.

What should I do during an AWS or Cloudflare outage?

Confirm it is the provider, post a status update saying what users see and that the cause is upstream, and then wait. Do not deploy, do not restart services at random, and do not attempt an unrehearsed switch of providers. Most self-inflicted damage during dependency outages comes from trying to fix something that was never yours.

Should I tell users the outage is caused by a third party?

Yes, plainly and without blame: name the provider, say what users will see, say no action is needed from them, and say when you will update next. It is still your incident to your users, so do not hide behind the provider — but honesty about the cause is what keeps their trust.

Do third-party outages count against my SLA?

That depends on your terms. Many agreements exclude upstream provider outages, some do not. Whichever it is, the monthly report should mark the incident as dependency-caused with the provider named, so the client can see the distinction — and so the decision about what counts was made in the contract rather than in the argument.

How can a small team reduce the impact of provider outages?

Write down every provider you depend on and what fails when it does; monitor their status as components of your own system; build degrade-not-die paths for the ones that matter most, such as queuing checkouts when payments are down; rehearse one failover a year; and know where several of your dependencies are actually one vendor.

What were the big outages in late 2025?

In October 2025 a failure in AWS's us-east-1 region took a large number of services offline for hours, and in November 2025 a Cloudflare configuration change caused widespread errors across sites using its network. In both cases many affected teams spent the early part of the incident investigating their own systems before the upstream cause was clear.

How Merik handles it

Merik's Digital Operations module puts the provider on the timeline. Vendor status feeds for Stripe, Supabase, GitHub, Vercel, Cloudflare, Twilio and OpenAI are watched alongside your own assets; when an incident opens on one of your sites while a provider is reporting trouble, the incident carries that context from the start, and the alert says so. Incidents explained by a dependency are still recorded — they happened, and they appear in the monthly SLA report marked as dependency-caused — but the repeated alerting is suppressed so the owner is not paged twenty times about one CDN.

Deploys from GitHub and Vercel webhooks sit on the same timeline, so "did we ship something?" and "is a provider down?" are answered by the same view in the first minute. See the Digital Operations module.

Create your workspace →

Or talk to us about your team →