All workflows
Google Sheets logoSlack logoGmail logo

Watch your websites for downtime

Checks every site listed in a spreadsheet on a schedule and alerts you in Slack or by email when one goes down or recovers.

Every 15 minutes3 apps6 steps

Apps it connects

Authenticate each one once and the workflow is ready to run.

What it does

Each integration step this workflow runs, in order, what it is for, and the conditions and loops that decide when it runs.

  1. 1Google SheetsRead rowsReads the 'Sites' tab for the list to check, and the 'Status log' tab for each site's last recorded state.
  2. If a step fails

    1. 2Google SheetsCreate tabCreates the 'Status log' tab in your spreadsheet on the first run, when no log exists yet.
  3. If not logHasHeader

    1. 3Google SheetsAppend rowWrites the log headings once, then records the time, URL, new status and detail each time a site changes state.
  4. For each site

    1. If currentStatus is not lastStatus

      1. 4Google SheetsAppend row
      2. If alertSubject is not empty

        1. If alertSlackChannelId is not empty

          1. 5SlackSend messagePosts a down alert when a site first stops answering, and an all clear with the outage length when it recovers.
        2. If alertEmailAddress is not empty

          1. 6GmailSendEmails the same down or back up alert to the address you give, if you prefer email or want both.

How it works

What happens on each run, in plain English.

Every 15 minutes, the workflow reads the sites listed on the 'Sites' tab of your spreadsheet, requests each one and decides whether it is up. A successful answer counts as up; a server error, a timeout or a name that no longer resolves counts as down. When a site changes state you are told in Slack, by email, or both.

Alerts go out on the change, not the state. When a site first stops answering you get one message saying what went wrong; while it stays down you hear nothing more; when it answers again you get a single all-clear saying how long it had been down. Every change is written to a 'Status log' tab in the same spreadsheet, created on the first run, which is both its memory and your record of what happened and when. One unreachable site never stops the others being checked.

Before the first run you need a spreadsheet with a 'Sites' tab that has a column headed 'URL', one site per row, and a Slack channel or email address to alert.

uptimemonitoringhttpgoogle sheetsslackgmailalerts

Start from a workflow that already works.

Add "Watch your websites for downtime" to your workspace, connect its apps, and make it yours. No credit card required.

Free plan available · No credit card required