How to use this tool

DEV Site is OK? — User Guide
Table of Contents
1. Getting Started 2. Running Checks 3. Understanding Results 4. Account & Authentication 5. Saved Domains & Dashboard 6. Cached vs Live Checks 7. Email Alerts 8. Plans & Tiers 9. FAQ

1. Getting Started

Site is OK is a website infrastructure health checker. It scans any domain for common issues across HTTP, HTTPS, SSL certificates, DNS, email configuration (SPF/DMARC/DKIM), mail server blacklist reputation, domain registration, and security headers — then gives you a score out of 100.

You can run a check without an account. Just type a domain name and click Analyze.

Creating a free account lets you save domains, track their scores over time, and get a dashboard overview.

↑ Back to top

2. Running Checks

Quick check (no account needed)

From the dashboard (account required)

Tip: You don't need to type https:// or www. — just the domain name is enough.
IP targets: A public IPv4/IPv6 address (8.8.8.8, 2606:4700:4700::1111) is a valid scan target too — the scan covers its web endpoints, TLS certificate (matched by IP SAN), reverse DNS (PTR), network registration, and blocklist reputation. DNS-record, mail and domain-registration checks don't apply to an address and are skipped. Private or reserved addresses can't be scanned.
↑ Back to top

3. Understanding Results

Score

The overall score (0–100) reflects the health of your domain across all checked categories:

Check Categories

Intrusive Checks

Some checks are marked ⚠ Intrusive because they actively probe the target server by requesting many paths (e.g. .git/HEAD, .env, index.php.bak). These checks are not run by default and are completely separated into their own ⚠ Intrusive tab. The scan page has two tabs — Standard and ⚠ Intrusive — placed above the scan input. Standard scans run by default; intrusive checks are a separate, manual action.

To run intrusive checks you must first prove control of the domain on the Verify page — publish your per-account token at /.well-known/siteisok-verify.txt (recommended; the file may hold several tokens, one per line, for teammates), as an HTML meta tag, or as a DNS TXT record at _siteisok-verify.<domain>, then run the check. Verification is per account and is re-checked before each intrusive run — removing the token revokes access. Anonymous users cannot see or run intrusive checks, and cached intrusive results are only shown for domains you have verified. A confirmation dialog then explains the risks (extra requests, server stress, and the possibility that our scanner may be firewalled or blocked by WAF/CDN providers) and requires explicit consent before proceeding. Results appear in the same tab with a separate Intrusive Security score (out of 100) and categorized check sections with icons, similar to the standard scan.

Intrusive checks include:

Intrusive checks can trigger WAF alerts or rate limits on the target server, which may result in our scanner being firewalled or blocked. That is why they are gated behind ownership verification — only run them on domains you control. If our scanner gets blocked because of your scans, your account and anything connected to it may be banned from the site.

Intrusive checks are never run by scheduled (cron) checks — they are always a manual, one-time action. Intrusive results are stored separately from standard checks, so they persist independently. Cached intrusive results are only shown to logged-in users for domains they have verified on the Verify page.

To stay polite, intrusive probes are paced (a short delay between requests, sent a few at a time) and the scan stops early if the target repeatedly refuses or drops our requests — in that case some checks show as not run rather than the scanner hammering your server. A 429 rate-limit answer is retried once if the server asks us to wait. If nearly every probe — including a guaranteed-nonexistent control path — is answered with the same refusal (403/406), the check is reported as blocked / indeterminate rather than "no files found", and it does not affect the intrusive score.

Refused vs unreachable

Checks distinguish "the site is down" from "the site blocked our scanner":

If our scanner was blocked mid-scan (the site answered, then everything went silent), the result is marked as filtered rather than down, and no "site down" alert is sent.

Technology Detection

The tool also detects what technologies your site is built with (CMS, web server, etc.). Detected technologies are shown with a confidence badge:

Recommendations

At the top of the results, you'll see a summary of recommendations — actionable items sorted by severity. Click any recommendation to jump to the relevant check section for details.

↑ Back to top

4. Account & Authentication

Registration

Login

Password Reset

Invited Users (Admin-Created Accounts)

Email Verification

Account Settings

Click your email in the top right to access the Account Settings page, where you can:

Logout

↑ Back to top

5. Saved Domains & Dashboard

Adding a domain

Checking a saved domain

Removing a domain

Score badges

Each domain in the dashboard shows a colored score badge on the right:

Fleet Summary & Filters

At the top of the dashboard, a summary bar shows how many of your domains are healthy, warning, or critical, plus your average score across all checked domains. Use the filter tabs (All / Critical / Warning / Healthy) to quickly find domains that need attention. Domains are automatically sorted by urgency — critical issues appear first.

Graphs & Trends

Click the Graphs button on any domain to view visual trends over time:

Charts use server-rendered SVG — no JavaScript libraries — so they load instantly and work everywhere. The graphs page also shows an uptime percentage and average response time summary at the top.

Alert indicators

When issues are detected during scheduled checks, alert badges appear next to the domain name:

Email notifications use escalation tiers so you get reminded as the deadline approaches: SSL at 30, 14, 7, and 1 day(s); domain at 60, 30, 14, 7, and 1 day(s). Each tier crossing sends a new email.

These indicators update automatically after each scheduled check. Click the domain row to see full details.

↑ Back to top

6. Cached vs Live Checks

To avoid repeatedly pinging servers, the tool uses a caching system:

Note: Live checks take a few seconds because they connect to your server from multiple angles (HTTP, HTTPS, SSL, DNS, RDAP, hstspreload.org). Cached results load instantly.
↑ Back to top

7. Email Alerts

When email sending is enabled, the system sends automatic alerts for issues detected during scheduled checks:

Alerts are sent at most once per domain per alert type within a 24-hour window to avoid duplicate notifications. You'll receive an email at the address registered on your account.

Notification Preferences

You can customize how alerts are delivered from the Account Settings → Notifications section:

Deliverability: To ensure emails reach your inbox (not spam), make sure the sending domain has SPF, DKIM, and DMARC DNS records configured. Check your spam/junk folder if you don't receive expected emails, and mark them as "not spam" to whitelist the sender.
↑ Back to top

8. Plans & Tiers

There are three plans available. The plan determines how many domains you can save and monitor:

Anyone can scan any domain for free without an account. The tier limit only affects how many domains you can save for ongoing monitoring.

Plan details and prices are on the Pricing page; once signed in, your current plan, domain usage, and billing history are on the Billing page. You can upgrade, switch, or cancel your subscription at any time. Payments are processed securely via our payment provider.

When you reach your domain limit, the Add Domain form is disabled and an upgrade prompt appears on the My Domains dashboard.

Upgrading (Free → Paid): Click the "Upgrade" button on any paid plan card, choose monthly or yearly billing, and complete checkout on our payment provider's secure page.

Switching plans (Paid → different Paid): If you already have an active subscription, clicking "Switch to" or "Upgrade to" on another plan triggers an instant plan switch — no checkout page. The proration is handled automatically: upgrades charge the prorated difference immediately, downgrades refund unused time. You can switch plans at most once every 6 hours.

Cancelling: Use the "Cancel Subscription" button in the Manage Subscription section. Your subscription remains active until the end of the current billing period, then your account is automatically downgraded to the Free plan.

You will receive a confirmation email from us for each billing event: new subscription, plan switch, and cancellation. (Our payment provider also sends their own receipt and refund emails.)

Paid subscriptions have an expiration date. If your subscription expires or is cancelled, your account is automatically downgraded to the Free plan (1 domain). If you have more than 1 domain saved, the extra domains remain in your list but you won't be able to add new ones until you upgrade again.

Pro and Business plans also include change history — a timeline of what changed between checks for each domain (SSL issuer, DNS records, security headers, score, and more). Click the "History" button on any domain in your dashboard to view it.

The Business plan also includes weekly email reports — every Monday you receive a summary of all your monitored domains: current scores, SSL/HTTP/HTTPS/DNS status, any expiring certificates or domains, and all changes detected in the past 7 days. The report is sent to your notification email (or account email if no override is set).

↑ Back to top

9. FAQ

Do I need an account?

No. You can run one-off checks without registering. An account is only needed to save domains and track them over time.

Is my data shared?

No. Your account and saved domains are private. Check results are stored only for your reference.

How often should I check my domains?

Saved domains are checked automatically once a day via a scheduled job. You can also run a live check manually at any time from the dashboard or the scan page. Email alerts are sent automatically when issues like SSL expiration, domain expiration, DNS problems, or site downtime are detected.

The score changed between checks — why?

Scores reflect real-time conditions. SSL certificates expire, DNS records change, servers go down temporarily. A lower score on a live check vs a cached one usually means something changed since the last check.

My domain shows "no DNS records found"

This means the domain doesn't exist or has no DNS configured. Double-check the spelling — make sure you entered the domain without http:// or paths.

The site works in my browser but the check says refused — why?

Your server answered our request with a denial code (usually 403 or 429). The site is fine for regular visitors, but its firewall, WAF, or bot-protection is rejecting automated clients like ours. If you want our scanner allowed, whitelist its requests in your firewall/CDN rules — otherwise the warning is expected and harmless.

The check says the host resolves to a private/reserved address — why?

Your domain (or its mail/DNS servers) points at an IP address that isn't publicly reachable — a private range (10.x, 192.168.x), loopback (127.x), link-local, or reserved space. That happens with internal-only hostnames, development names like localtest.me, or split-horizon DNS that hands out internal addresses. Our scanner only connects to public IPs — it can't reach those addresses, and connecting to them could touch infrastructure that isn't yours. If the site is meant to be public, the DNS record is likely misconfigured.

The site says my domain "can't be scanned" — why?

You entered a name that can never be a real public site — either a reserved/documentation name like example.com, an internal-space ending (.test, .invalid, .localhost, .local, .internal), a single word with no dot, or a name that provably resolves to a private or reserved IP address (like localtest.me or private-IP nip.io aliases — see the question above). Scanning one would produce a meaningless report, so we refuse it up front. Enter the public domain you actually want checked.

How do I report a security vulnerability?

Email contact@siteisok.com with the details — affected page or endpoint, steps to reproduce, and any relevant logs. Please give us a reasonable window to investigate and fix before disclosing publicly. We do not run a bug bounty program, but we take reports seriously and will acknowledge your report.

Why does a saved domain stop being fully scanned?

If a scheduled check found the domain unreachable, later runs first send a minimal probe (a connection attempt and a single request) instead of the full scan. When the domain starts answering again, the full scan resumes automatically. This avoids hammering a dead host or a firewall that blocked us.

If a site's firewall actively blocked our scanner, the domain is additionally backed off: we stop probing it entirely for a growing interval (starting at one hour, doubling each time the block persists, capped at 24 hours). A blocked domain shows "Scanner blocked" on the dashboard instead of "Site down". If it's your site, allowlist our scanner via the bot info page — the next probe that gets through clears the block and normal scanning resumes.

↑ Back to top