HelloSEOTools

Instant SEO audit: see what is stopping a page from ranking, and how to fix it.

Paste any public URL. In a few seconds you get prioritised findings on indexability, metadata, structure, links, images, structured data, and speed signals, each with the evidence, the reason it matters, and the fix.

We fetch the page once as a crawler would, without running JavaScript, and check up to 15 internal links. Public URLs only. Nothing is stored beyond a 5 minute cache; no signup.

What each finding means

Critical blockersProblems that stop Google from indexing the page at all: a 4xx or 5xx status, a robots.txt disallow, a noindex directive in the HTML or headers. Fix these first; nothing else matters until they are gone.
High-impact improvementsIssues that clearly hurt visibility or clicks: missing title, missing viewport, no H1, plain http, canonical conflicts, several broken links, long redirect chains.
Useful refinementsSmaller wins: description length, alt text, image dimensions, heading order, Open Graph tags, render-blocking scripts. Worth doing, rarely urgent.
Passed checksEverything we looked at that was fine, listed so you can see what was actually tested rather than guess.
EvidenceThe extracted title, description, canonical, headings, counts, redirect chain, and allow-listed response headers, plus the raw JSON. Every finding above is derived from this.
Confidence and sourceEach finding names where the data came from (fetched HTML, HTTP headers, robots.txt, link probes) and how confident we are. Low confidence means the signal is a proxy or a single sample.

Limitations and data sources

Frequently asked questions

What does the score mean?
It is a summary of the checks on this page, nothing more. We start at 100 and subtract 25 for each failed critical check (capped at 75), 8 for each high, 3 for each medium, and 1 for each low; warnings count half. It is not a Google ranking score and a high number does not guarantee rankings. Use it to compare a page with itself after fixes, not to compare against competitors.
Why do you not show domain authority or backlink counts?
Because we cannot measure them honestly from a single page fetch. Authority scores are third-party estimates, not Google data, and backlink counts need a crawl of the whole web. We only report what we observed on the page you gave us, with the source named. For links, use Google Search Console's Links report, which is free and comes from Google.
How should I use the target query field?
Enter the search phrase you want this page to rank for. The audit then reports whether that phrase, or its words, appear in the title, H1, first 100 words, and URL path. Treat it as evidence of whether the page is plainly about that topic. Do not add the phrase where it reads unnaturally; repeating keywords does not help and can hurt.
How often should I re-run the audit?
After every change to the page or the site's technical setup, and once a month otherwise. Plugin updates, theme changes, CDN rule edits, and staging pushes are the usual causes of new noindex tags, broken canonicals, and missing titles. Results are cached for five minutes, so add fresh=1 to the API URL if you need an immediate re-check.
Is this the same as Lighthouse or PageSpeed Insights?
No. Lighthouse renders the page in a browser and measures loading, interactivity, and layout shift. This audit reads the HTML and headers a crawler receives, without running JavaScript, and focuses on whether Google can index and understand the page. The performance section here shows lab proxies only; for Core Web Vitals, run PageSpeed Insights, which we link to in the report.

API

The same report is available as JSON, free, no key required, cached for 5 minutes (add &fresh=1 to bypass):

GET https://helloseotools.com/api/audit?url=https://example.com/&query=optional+target+query

The response contains checks (sorted, each with id, category, status, severity, observed, why, fix, reference, confidence, source), groups, score with its method, extracted page facts, fetched transport detail, and allow-listed headers. Fetch failures return ok:false with fetchError:true so you can tell them apart from SEO findings.

Please keep automated use under a few requests per second. Heavy or abusive use will be rate limited.

Related tools

Related reading