What This Workflow Does
This workflow automates checking if websites are up or down every six hours.
It reads website URLs from a Google Sheet, tests each one with HTTP requests, and finds if their status changed.
Alerts go out by email and Slack if a site goes down or comes back up.
It also logs all events and updates the Google Sheet with current status.
This saves time and helps catch problems faster.
Tools and Services Used
- n8n: Automates workflow steps.
- Google Sheets: Stores URLs to check and logs status history.
- HTTP Request node: Sends GET requests to websites to get status codes.
- Gmail: Sends email alerts if websites change status.
- Slack: Sends chat alerts to notify about uptime changes.
Inputs, Processing Steps, and Outputs
Inputs
- Website URLs listed in a Google Sheet under a “dashboard” tab.
Processing Steps
- Scheduled trigger runs workflow every 6 hours.
- Reads URLs from Google Sheets.
- SplitInBatches node sends each URL alone for processing.
- HTTP Request node sends GET to the URL to check status code.
- Set node calculates if status changed from last known UP/DOWN.
- Switch node routes flow based on four cases: UP stays UP, DOWN stays DOWN, UP recovered from DOWN, or DOWN newly found.
- Each route logs event in website-specific Google Sheet tab.
- Updates main Google Sheet dashboard with current status.
- Sends alerts via Gmail and Slack if status changed.
Outputs
- Updated Google Sheet showing latest site statuses.
- Logs of uptime events in separate Google Sheet tabs.
- Email and Slack messages alerting about status changes.
Beginner Step-by-Step: How to Use This Workflow in n8n Production
Step 1: Import the Workflow
- Download the workflow file using the Download button on this page.
- Go inside n8n editor.
- Use the option Import from File to load the downloaded workflow.
Step 2: Configure Credentials and Settings
- Add or update your Google Sheets credentials using OAuth2.
- Set up Gmail credentials with OAuth2 to allow sending emails.
- Enter Slack bot token and choose the right channel for alerts.
- Update Google Sheet Document IDs, sheet names, email addresses, and Slack channel IDs in nodes as needed.
Step 3: Test the Workflow
- Run the workflow manually once to check if all nodes work without errors.
- Verify emails and Slack messages are received when appropriate.
Step 4: Activate for Production
- Turn the workflow on by toggling the “Active” switch in n8n.
- From now, the workflow will run every six hours automatically.
For those using self hosting n8n, consider using a stable VPS and check self-host n8n for setup help.
Step-by-Step Workflow Building Instructions (Summary)
- Set up a Schedule Trigger for every 6 hours.
- Use Google Sheets node to read list of sites to check.
- Use SplitInBatches to handle sites one at a time.
- Use HTTP Request node to check site status with GET.
- Use Set node to compare old and new statuses, make Booleans to detect changes.
- Use Switch node to route depending on status changes.
- Append events in website-specific Google Sheet tabs via Google Sheets append node.
- Update the master dashboard Google Sheet with current info.
- Send Gmail and Slack alerts only when status changed.
Customization Ideas
- Change how often the workflow runs by editing the frequency in the Schedule Trigger node.
- Add more alert methods like SMS using Twilio by duplicating alert nodes.
- Do extra checks such as response times in the HTTP Request node for better uptime insights.
- Filter which sites to check by adding a Filter node before SplitInBatches to select only “active” sites.
Troubleshooting Common Issues
Workflow Stops on HTTP Errors
The HTTP Request node might stop if “Never Error” is off.
Turn on “Never Error” so workflow continues even if some sites fail.
Google Sheets Authentication Fails
Check Google Sheets OAuth credentials are valid and have proper permissions.
Reauthenticate if needed in the Google Sheets node settings.
No Alerts Sent
Verify Gmail OAuth and Slack tokens are correct and authorized.
Make sure email addresses and Slack channel IDs are entered properly in alert nodes.
Summary of Results
✓ Saves about 4 hours weekly by automating uptime checks.
✓ Sends immediate alerts by email and Slack when sites go down or recover.
✓ Keeps detailed logs per website in Google Sheets for tracking history.
→ Updates dashboard sheet to give quick status overview.
→ Improves reaction time and reduces website downtime.
