nere.nubeta

Methodology

Blog Check Status

Methodology

How we check websites and determine their status.

This page explains exactly how nere.nu monitors websites, detects outages, and distinguishes between genuine downtime and local connectivity issues. If you're a technical user who wants to trust our data, this is for you.

Overview

We use a multi-layered approach combining server-side checks, browser-side checks, and crowd data. No single data source is perfect, so we combine them for the most accurate picture.

1. Server-side Checks

How we connect

Our monitoring servers send HTTP GET requests to the target domain using cURL with these settings:

What user-agent we use

We rotate between realistic browser user-agents (Chrome and Safari on modern Windows/macOS) rather than a bot identifier. This is because many sites return different responses to identified bots, which wouldn't reflect what real users see.

How we determine "up" or "down"

HTTP StatusClassificationRationale
200-399✅ UpServer is responding normally
400-499✅ UpServer works, just refuses/blocks our request (403, 404, etc.)
500-599❌ DownServer error — the site itself is broken
503 with CDN challenge✅ UpCloudflare/DDoS-Guard challenge = site is up, just verifying visitors
SSL handshake error (cURL errno 35)✅ UpServer is reachable, just has SSL issues
TCP connect + no HTTP response❌ DownServer crashed mid-request
Connection timeout❌ DownNothing is answering at the address
DNS lookup failure❌ DownDomain doesn't resolve

HTTP fallback

Some domains (notably older ones like elasticbeanstalk.com) only respond on HTTP and redirect to HTTPS elsewhere. If our HTTPS check fails with a timeout, we try HTTP as a fallback before declaring the site down.

2. Browser-side Checks

When you visit a status page, we also run a check from your browser. This catches cases where:

We use a <img> tag pointing to the site's favicon as a non-blocking probe. If it loads, the site is reachable from your browser. This doesn't work for every site (some block hotlinking), so we also try a no-cors fetch request.

3. Crowd Reports

When multiple visitors check the same site at roughly the same time, we aggregate their (anonymous) reports:

4. Check Frequency

Different sites are checked at different intervals:

CategoryInterval
Site is DOWNEvery 2 minutes
Popular sites (top 1000)Every 5-15 minutes
Regularly searched sitesEvery 30 minutes
Rarely checked sitesEvery few hours to daily
When someone visits a status pageImmediately, if cached data is older than 15 minutes

5. Incident Detection

An "incident" is detected when we observe a status transition. We record the exact timestamp and duration. You can see incidents in the "Recent Incidents" section on each status page.

We use hourly buckets for the 7-day uptime timeline: if any check within an hour showed the site as down, that hour is marked down.

6. Response Time Measurement

Response time is measured from the start of our cURL request until the full response is received. This includes:

Because this is measured from our server's geographic location (EU), sites hosted far away will naturally appear slower. A site showing 500ms from our servers might be 100ms from a closer location.

7. Infrastructure Detection

We identify the CDN or hosting provider via HTTP response headers:

If headers don't give a clear answer, we fall back to CNAME records (useful for detecting hosting providers even when they don't set custom headers).

8. What We Don't Do

9. Limitations

We're upfront about what our checks can't do:

For mission-critical monitoring, combine nere.nu with a dedicated commercial service that monitors from multiple regions.

10. Data Sources & Third Parties

We use:

We don't buy data from commercial monitoring services or resell their data.

Questions?

If you have questions about our methodology, email us at [email protected]. We're happy to explain specific edge cases or discuss improvements.