Domains

You need one of them. Not all four.

All four methods prove the same thing and unlock the same widget. Pick whichever you can finish without asking anyone for a password. For most people that is Widget already running: paste the snippet on your site and we confirm it for you.

First, the contradiction

Why onboarding shows fewer options than Domains

Nothing is broken and you are not seeing two different products. The two screens are the same feature with different amounts of choice on purpose.

  • The onboarding screen leads with the widget snippet and quietly watches for it. A DNS panel sits underneath, folded away behind "Prefer to verify by DNS instead?". So it looks like two options.
  • Domains → Verification shows all four as cards, easiest first. Same underlying check, same result.

A domain that has not passed any check yet is labelled Pending DNS in the domain list. That label is misleading and we know it: it means "not verified yet", whichever method you intend to use. You are not obliged to do anything with DNS because of it.

Side by side

The four methods

Ordered easiest first — the same order the dashboard uses.

MethodWhat it needs from youWho can do itHow quick
Widget already runningThe widget snippet live on your site's homepage, and the site publicly reachable.Anyone who can edit the site, or add a tag in Google Tag Manager.Fastest. Often confirms itself while you are still on the screen.
Meta tag in homepageOne <meta> tag in the homepage <head>.Anyone with a CMS that has an SEO or header-code box. No theme editing needed.Minutes, once the page is republished.
File on websiteA small text file uploaded to an exact path on your web server.Anyone with file or FTP access. Awkward on hosted platforms that block arbitrary paths.Minutes.
DNS TXT recordOne TXT record wherever your domain's DNS is served.Whoever holds the registrar or DNS login. Often not the business owner.Usually 1–5 minutes after saving. Step by step here.

There is a fifth method you cannot choose: plugin. Our WordPress plugin and Shopify app embed prove ownership by themselves during install, so if you went that route the domain may simply arrive verified. It never appears in the picker because there is nothing for you to select.

Pick one

Choose by what you can get at right now

  • You can edit your site (or already pasted the snippet)Widget already running. We fetch your homepage and look for your own widget key in it. We also read any Google Tag Manager container the page loads, so a GTM install counts.
  • Your site is a hosted CMS — Wix, Squarespace, Webflow, GhostMeta tag. Every one of them has a place for header code: Wix under SEO & Marketing → SEO Tools, Squarespace under Settings → Advanced → Code Injection → Header, Webflow under Site Settings → Custom Code → Head, WordPress via your SEO plugin's custom-meta field. If a label has moved, look for anything that says "header", "head", "custom code" or "code injection".
  • Your Shopify store still has a storefront passwordWidget already running. Development stores always have one, and the meta-tag and file methods cannot see past the password page. We detect this specific case and say so, with a one-click switch to the working method — so a wasted attempt is not the end of the world.
  • Your site sits behind a login, a staging password or a firewallDNS TXT or Meta tag on a publicly reachable page. Anything that needs us to fetch your site cannot work if we cannot reach it.
  • An agency or developer controls the site but you control the domainDNS TXT. It is the only method that needs nothing from whoever runs the website.
  • The domain is managed by someone else and you cannot wait → any of the other three. You do not need DNS access to use the product.
One thing to know before choosing

The method you pick is also the method we re-check

Verification is not once and forever. We re-run the same check about every 7 days to make sure the proof is still there. Three consecutive misses and the domain is suspended — the widget stops serving on it and we email the account address, naming the method that stopped working. Putting the proof back and pressingRe-verify clears it straight away.

That has one practical consequence worth knowing:

  • DNS TXT, meta tag and file stay true as long as you do not remove them. Nothing else is required of you.
  • Widget already running is re-checked from the widget's own activity: the weekly check looks for the widget having loaded on that domain within the last 24 hours. On a site with steady visitors this is invisible. On a brand-new or very quiet site it can miss, so if your site gets few visitors, verify by DNS TXT or meta tag instead and leave the proof in place.

You can change method at any time. Pick a different card and press Re-verify; whichever passes becomes the one we re-check from then on.

Also worth knowing

Small things that surprise people

  • www and non-www are different domains to us. Verification runs against the exact hostname shown under the Verify button. If your site answers on both, add both.
  • The picker remembers your choice. Selecting a card saves it, so the panel does not reset to something else when you come back. A brand-new, unverified domain starts on Widget already running even though the underlying default is recorded as DNS.
  • A failed attempt costs nothing. There is no limit on tries and no penalty. When a check fails we also quietly run an install diagnosis of your site and show anything useful it found underneath the error.
  • Removing a domain is allowed, even the last one. Your account, your dashboard access and your settings stay. You can re-add and re-verify at any time — that is also the supported way to move a domain to a different account.
If that did not work

When none of the four will pass

  • Read the error, not the method. Each failure names its own cause: "No matching meta tag found on the homepage", "Couldn't fetch the verification file", "We haven't seen the widget boot on this domain yet", "DNS record not yet visible". They point at different fixes.
  • Try a second method before assuming the product is wrong. Two methods failing for the same reason — usually "we cannot reach your site" — is itself the diagnosis.
  • If we cannot fetch your site at all, check that it loads in a private browser window with no VPN, and that a firewall or security plugin is not blocking unfamiliar visitors. Our checker identifies itself as aichat-domain-verifier if you need to allow it through.
  • If the site is not public yet, use DNS TXT. It is the only method that does not need your site to be reachable.
  • Still stuck? Email support@orcalinq.com with the domain, which method you tried, and the error line word for word. Say whether the site is public. That is normally enough to answer without a call.

Any one of the four is enough.

Domains → Verification. Pick the card you can finish today; the widget starts working the moment it passes.