Docs menu Your first audit
Your first audit to first receipt.
Connect Search Console, run one audit, queue one article, and publish it. The hands-on part takes about 15 minutes — the receipt fills itself in over the following weeks.
- A live site on a domain you control. HitMind audits what Google can reach, so the site must be publicly crawlable.
- A Google account with access to the site's Search Console property. Owner or Full permission works; Restricted does not.
- A WordPress site with an admin account. Needed for step 4 only — you can audit and queue topics without it.
- A HitMind account. Any plan, including the free audit tier. Run the free audit first if you haven't.
The audit's first move is to try to load your homepage — if that fails outright (DNS error, timeout, connection refused, or a non-2xx response), the run stops there and reports a blocked site rather than inventing a score. robots.txt is fetched too, but it only feeds a minor sub-score today — a fully-blocking robots.txt like the one below won't by itself stop the run. Nine times out of ten a robots.txt that blocks everything like this is a staging file that shipped to production, and it's worth fixing regardless.
# yourdomain.com/robots.txt — blocks every crawler, HitMind included
User-agent: *
Disallow: /Open Settings → Connections → Google Search Console and click Connect with Google. Google will ask you to grant HitMind the webmasters.readonly scope — that's the only one we request. Pick the property that matches your domain; if you have both a Domain property and a URL-prefix property, choose the Domain property, which covers every subdomain and protocol.
Enter your domain on the Audit tab and click Run audit. HitMind reads your homepage, robots.txt, sitemap and llms.txt, then scores five dimensions — performance, SEO, mobile, security, and international fit. It finishes in about a minute; the result is a ranked fix list, ordered by severity, not a raw issue dump. (For page-by-page coverage, run a Site crawl — it walks up to 600 URLs from your sitemap and takes about 20 minutes.)
Scores are deterministic and comparable across runs: re-audit after fixing something and the delta is real, not noise. Fix the top two or three issues before you publish anything — content earns more on a technically clean site.
Once Search Console data syncs, the Topics board fills with suggestions seeded from queries you already show impressions for — no Search Console yet, and it falls back to your brand facts instead. Pick any pending topic and click Queue; HitMind drafts the article against your brand fact base, then runs it through the quality gate.
When the draft passes the quality gate, you'll see it in Review with its gate score. Click Approve and HitMind delivers it to your connected WordPress as a draft, with title, excerpt, schema markup, and internal links already set — HitMind never presses Publish for you. Open it in WordPress and publish it yourself when you're ready.
The moment the article is actually live on your site, the 28-day baseline for its receipt starts recording. Now the honest part: wait. On an established site the first new impressions usually show within 3–7 days; on a fresh domain the first click typically lands between day 6 and day 21. We can't show you a finished receipt yet in this guide — nothing has gone the full 28 days — but that's the window it's built to measure.
Your first receipt starts life as a baseline. Every check-in after that is pulled from your own Search Console — the same numbers you'd see in your own account, pinned to the article that earned them. From here, read The loop to understand how audits, topics, and receipts feed each other, or Receipts for exactly how attribution windows are calculated.
Connect your domain.
One workspace tracks one domain. Getting the host right on day one saves you a re-baselined receipt later.
Open Settings → Site, type the bare domain — no protocol, no trailing slash — and save. HitMind normalizes what you type — strips the protocol and any path, lowercases it — and saves that as your domain. If www. and the apex redirect to each other, make sure you enter the host you actually publish on: that's what every later audit, topic and receipt is measured against.
# right
yourdomain.com
# also fine — we strip these for you
https://yourdomain.com/If www. and the apex both answer without redirecting to each other, Google may split your signals — and so will we, because we can only see what Google reports. Fix the redirect first; it is usually a one-line change at your host and it is worth more than any article we could write for you that week.
- Blog on a subdomain? Connect the subdomain that actually publishes — that is where the articles and the receipts live.
- Blog in a subfolder? Connect the apex; a Domain-type Search Console property covers both.
- Staging host? Do not connect it. It is usually blocked in robots.txt, which stops the audit before it starts.
Connect Search Console.
One read-only scope. It is the only source we will ever use to claim a result — topics from your real queries and receipts need it; audits and topics from a direction you give work without it.
Every number on a receipt comes from your Search Console, not from a third-party rank estimate. That is the whole promise: you can open your own Google account and check us. Without the connection we can still audit your homepage, but we cannot suggest topics from real queries and we cannot open a receipt — so the loop never closes.
In Settings → Connections, click Connect with Google and approve the consent screen. One scope is requested and no other will ever be added silently:
https://www.googleapis.com/auth/webmasters.readonly- Domain property — covers every subdomain and both protocols. Pick this one whenever it exists.
- URL-prefix property — covers exactly one host and protocol. Fine, as long as it is the host you actually publish on.
- Restricted permission — not enough. Google hides the query data behind Full or Owner; ask whoever owns the property to upgrade you.
Google tokens expire and permissions get revoked — usually when someone leaves the team. When that happens a red banner appears until you re-authorise, and until then receipts and the topics seeded from your Search Console queries stop updating. Nothing is lost: drafts, receipts and history stay put, and the data we missed is filled in once you reconnect.
Connect WordPress.
An application password, not your login. Revocable in one click, and scoped to the one user you create it for.
In WordPress, go to Users → Profile → Application Passwords, name it hitmind, and copy the generated string. WordPress shows it once. We recommend creating a dedicated Editor-role user for it rather than using an administrator account — publishing is all we need.
In Settings → Connections → WordPress, enter the site URL, the username, and the application password. We immediately create a private test post and delete it again, so you find out now — not when your first article is delivered — whether the REST API is reachable.
# what we call, and nothing else — DELETE only removes the test post we create when you connect
POST https://yourblog.com/wp-json/wp/v2/posts
PUT https://yourblog.com/wp-json/wp/v2/posts/{id}
GET https://yourblog.com/wp-json/wp/v2/posts/{id}
DELETE https://yourblog.com/wp-json/wp/v2/posts/{id}- 401 Unauthorized — the password was copied with spaces, or the user lacks publishing rights.
- 403 Forbidden — a security plugin is blocking the REST API. Wordfence and iThemes both do this by default.
- 404 Not Found — REST is disabled or the site URL has a subfolder we were not told about.
The loop.
Topics come from your Search Console queries or a direction you give, articles answer them, and receipts prove whether the answer landed. The audit sits underneath as the technical floor.
- Audit — the technical floor. Five dimensions, scored the same way every run so the delta means something.
- Topics — queries you already appear for in Search Console, or a direction you give, turned into something to approve and write.
- Draft & gate — written against your fact base, then scored. Under 70 it is rewritten automatically, up to twice; if it is still short, it waits in Review for your call.
- Receipt — the baseline, the wait, and the verdict, in your own Search Console numbers.
By default, twice: you approve each topic, then each article. Turn on autopilot in Settings → Autonomy and HitMind approves both for you — daily topic picks within your allowance (paid plans), and drafts that pass the quality gate with nothing that needs a person's review. Topics you generate from a direction, and anything headed to a Webhook, still wait for you. Once an article is approved HitMind files it as a draft in your WordPress — pressing Publish is yours, in WordPress — and from the moment it is live everything is measurement you can audit yourself. If a day produced nothing worth deciding on, you get no card — I would rather show you an empty inbox than manufacture work.
Search Console data settles on a two-to-three-day delay, so HitMind syncs it once a day instead of re-reading it hourly, and on paid plans new topic suggestions arrive once a day too. Your approvals don't wait for any of that: drafting starts right after you approve a topic, and delivery to your WordPress starts right after you approve an article.
Receipts, and what they prove.
A receipt is one article, one baseline, one measured window. It is deliberately narrow — a narrow claim you can verify beats a broad one you cannot.
- Baseline — impressions, clicks and average position for the target query in the 28 days before publish.
- Publish stamp — the URL, the timestamp, and the gate score it passed with.
- Day 28 — the one scheduled check-in, pulled fresh from Search Console. A receipt that's still waiting on Search Console data reprints automatically once that data catches up, rather than shipping early with a gap in it.
We compare the 28 days after publish against the 28 days before, for the queries the article targets, on the URL the article occupies. Site-wide traffic is shown alongside for context but never folded into the claim — if your homepage had a good month, that is not this article's doing.
It never claims revenue, never claims a ranking we did not see in Search Console, and never quietly drops a losing article. A receipt that reads no measurable change is a real outcome and stays in the archive with the rest.
The quality gate.
Nothing reaches your review queue unscored, and a draft under the pass mark only moves on if you override the gate yourself.
- Structure (25 pts) — does it actually have the shape of an article: headings, an intro, somewhere it lands.
- Length (20 pts) — enough substance for the topic, measured in whatever unit fits the language (characters for Chinese and Japanese, words otherwise).
- Keyword use (20 pts) — the target keyword shows up where it should, without being stuffed in.
- Readability (20 pts) — sentence and paragraph shape; padding, repetition and boilerplate get penalised.
- Links & evidence (15 pts) — internal links to pages on your own site, plus signs it isn't just asserting things.
70 out of 100, fixed — there's no settings page to raise or lower it today. Below 70, the draft is rewritten automatically against the specific checks it failed. The score and its breakdown ride along with the draft into review, so you always see why it passed.
It's rewritten automatically, up to twice, each time against the specific checks it failed. Still under 70 after that, and HitMind stops trying on its own: you decide from Review whether to send it back for another rewrite or approve it as-is anyway (that override is recorded, not hidden). Across the whole topic you get five attempts in total, counting the first draft.
The topic engine.
Every suggestion starts from something you can check: queries you already appear for in Search Console, your own brand facts when there's no Search Console data to work from yet, or a direction you give it. Where a suggestion shows search volume and difficulty, those figures come from a third-party keyword database.
- Search Console connected — topics are seeded from queries you've actually shown impressions for in the last 28 days, the same ones you'd see in your own account.
- Not connected yet, or too new to have data — HitMind falls back to your brand facts (what you do, who it's for) to suggest a starting direction instead of producing nothing.
- One flat queue — every suggestion sits as pending until you decide. There's no automatic sorting by rank or trend today; what you see is everything there is.
On paid plans, HitMind checks Search Console for new topics once a day on its own. The free plan doesn't get that automatic run — you trigger generation yourself whenever you want fresh suggestions (see below), which is also how a brand-new site with no Search Console history gets its first topics either way.
Click Generate and give HitMind a direction — a launch, a competitor question, a support theme — and it drafts a batch of topic suggestions from that, the same way it would from a Search Console query. Each one still goes through your approval and the quality gate afterward; a direction gets you suggestions to review, not a finished article.
WordPress setup.
Where posts land, who they are attributed to, and how we stay out of the way of the SEO plugin you already trust.
Every article arrives as a draft under the WordPress user you connected in Settings → Connections, and lands in whatever category your site defaults new posts to — HitMind doesn't set either one, so recategorizing or reassigning a post is a WordPress-side edit for now. If you want the byline to be a real person, connect that person's WordPress user — attribution is an E-E-A-T signal and an empty author archive reads badly to both Google and readers.
- Title, slug and excerpt — the meta description goes into WordPress's own excerpt field, not into Yoast, Rank Math or any other SEO plugin's fields; if your SEO plugin reads its description from its own field, copy it over by hand
- An Article JSON-LD block, in the post body
- Internal links to your earlier HitMind articles that are already live (none until you have one)
Yoast and Rank Math both emit their own Article schema. Two copies is not a penalty, but it is noise. HitMind doesn't yet have a toggle to turn its schema off, so if you want to avoid the duplicate, turn your plugin's schema off for these posts instead — one owner per field is the rule that keeps things debuggable.
Article lifecycle.
From writing to your WordPress drafts, every state is visible.
writing → in review → ready to publish → in drafts
↕
paused
# ready to publish = approved and being handed to WordPress (retried automatically if it fails)
# paused = you stopped a draft mid-write
# in drafts = delivered to your WordPress as a draft; you press Publish there
# still under 70 after two automatic rewrites? It stays in review, marked held, until you decideIn review you can edit the title in place. The body isn't edited by hand — to change it, send the article back with a note on what should change and HitMind rewrites it. A title edit doesn't re-run the gate, because at that point you are the gate; a rewrite does. What you approve is what we deliver, apart from mechanical clean-up on the way out: the duplicate H1, utm_ parameters and unresolved placeholders are removed, a trailing | Brand is trimmed from the title (your theme usually adds the site name itself), and the JSON-LD is moved into a script tag.
Unpublishing from inside HitMind hasn't shipped yet. Today, taking a published article down means switching it back to draft (or deleting it) directly in WordPress — we don't touch a published post once it's live; that's your call to make in your own CMS, not ours to make for you.
Plans & billing.
Monthly or annual, per domain, cancellable in the portal without emailing anyone.
Self-serve billing is live: pick a plan, pay at checkout, and change plans or cancel yourself from Settings → Billing — no email required. The one thing we haven't seen yet is a renewal: today's customers haven't hit a renewal date, so we're not calling this fully proven until the first ones go through.
A monthly article allowance that scales with the plan — see pricing for the numbers. The 600-page site crawl depth is the same on every plan. Audits, the fix list, your Search Console data, the topic board and every docs page are included on every plan, the free one too — we do not put the evidence behind a paywall. The free plan's allowance is your first 3 articles, free for life, no card needed; after that it takes a paid plan. Receipts work the same on every plan — 28 days after an article actually goes live on your site — but no plan has one yet: nothing anywhere has gone through that window.
Monthly or annual, same plan either way — annual is ten months' price billed once a year instead of twelve (Growth is $990, not $1,188). Switching plan, or switching cycle, works the same way and happens immediately: we prorate whatever's left of your current paid period and charge or credit the difference right away, not at your next renewal. Settings → Billing shows your current cycle and plan and lets you change either.
From Settings → Billing: switching to a different paid plan — up or down — takes effect immediately and is prorated, exactly like switching cycle above. Cancelling is different and doesn't prorate anything: you keep your current plan's access until the period you already paid for ends, then HitMind drops you to the free plan on its own. There's a 72-hour grace window built into that drop, so a slow payment confirmation on our end doesn't wrongly downgrade you first.
Nothing goes read-only and nothing gets deleted when you cancel. Once your paid period ends, you're simply on the free plan — same limits as a new signup (1 site, 1 market, 1 connection). Articles already published stay published: they're on your own WordPress, not ours, and we never touch them either way. Receipts you've already earned stay yours and stay exportable as CSV.
Data & privacy.
A short page, on purpose. If a promise needs three paragraphs of hedging, it is not a promise.
- Search Console metrics for your connected property — queries, impressions, clicks, positions.
- Pages we fetched during audits and crawls, and the scores derived from them.
- Your fact base, drafts, published articles and receipts.
We do not sell or share your Search Console data, we do not train shared models on your fact base or drafts, and we do not use one customer's data to write another customer's article.
Email support@hitmind.ai from the address on your account. We revoke HitMind's Google and WordPress access, email you a final export, and delete the workspace and every receipt within 30 days of your request. You can revoke Google access or disconnect a publishing destination yourself any time in Settings → Connections. Anonymous audit reports (run without an account) aren't part of any workspace, so deleting a workspace doesn't touch them: each one is saved as a snapshot at its own unlisted link (other than one sample report of our own site, which we do link to). To have one removed, email support@hitmind.ai with the link.
Terms of service
Our Terms of Service are published in full at /terms. Questions? support@hitmind.ai.