1001 SEO Media
All posts
By 1001 SEO MediaGEOonboardingagency process2026

The First 30 Days of a GEO Client in 2026: Our Onboarding Checklist

Our week-by-week onboarding checklist for a new GEO client: access requests, prompt set, personas and locations, competitors, the baseline, first fixes, and the day-30 report.

Most delays in a new GEO engagement have nothing to do with analysis. They come from waiting. Waiting for someone to grant Search Console access, for the infrastructure team to look at a CDN ticket, for a tag manager container to get published. Every day a connection sits in someone's inbox is a day of crawler and traffic data we never get back.

So our onboarding checklist starts with access and works forward from there. This is the version we run in 2026, week by week, from signed proposal to the report the client gets at day 30.

Before day one: one access email

The day the proposal is signed, the client gets a single email listing every request, why we need it, and who on their side usually owns it. One list beats six separate asks, and it lets the client route each item internally in one go.

What's on it:

  • Google Search Console. We connect it to Promptwatch at organization level through OAuth and pick the client's property per project. Bing Webmaster Tools goes on the list too if they use it. Search Console feeds Prompt Explorer with candidate prompts and powers the page-level view that overlays search traffic with AI crawls and citations.
  • CDN or hosting access for crawler logs. What we ask for depends on the stack. Cloudflare sites use Logpush by default, or an auto-deployed Worker. Vercel and Netlify use log drains, Fastly streams logs over HTTPS, CloudFront uses standard logging v2 through Kinesis Data Firehose, and Akamai uses DataStream 2. Some stacks need a custom HTTP endpoint.
  • The CMS. On WordPress, the official Promptwatch plugin covers crawler logs, visitor analytics, and publishing in one install, which makes it the shortest path for a lot of clients.
  • Google Tag Manager. Visitor analytics runs on a lightweight script, and there's a GTM template. We need someone who can publish the container, or a developer who will.
  • Commercial context. The competitors they lose deals to, a sample of sales call notes and support tickets, and any approved product facts we should check answers against.

We put an owner and a target date next to each item and track them in the first weekly call.

Week one: connections and the brand record

We create the client's project in our agency workspace and fill in the brand record carefully: official name, common aliases, domain, products, markets. Monitoring can only count a mention it recognizes, so a missing alias shows up later as a fake visibility gap. Promptwatch's brand merging helps when the same company appears under two names.

Then we chase connections in order of how much data we lose by waiting. Crawler logs come first. In our setups, crawler data starts when the connection goes live, so a log integration that lands in week three gives us two fewer weeks of baseline. Agent Analytics verifies requests against each operator's published IP ranges, which matters on day one: spoofed bots don't pad the early numbers.

Visitor analytics comes next. Once the script or GTM tag is live, we test it with a real click from a ChatGPT answer. OpenAI documents that ChatGPT adds utm_source=chatgpt.com to links it sends traffic through, so we can confirm the visit lands with its source attached.

The site audit takes care of itself. It runs weekly with 21 checks and a health score, so the first run usually arrives before the end of week one and gives us a crawlability read before we've written a single prompt.

Week two: the prompt set

We've written about how we build client prompt sets in detail, so here's only what's specific to onboarding.

Prompt Explorer does the first pass. It suggests prompts from the client's Search Console queries, ranking keywords, People Also Ask, manual searches, and pages on their site. The page-based suggestions are handy in a kickoff because they show the client which questions their current content claims to answer.

Every candidate gets checked for search volume and difficulty before it goes on the list. We tag each prompt by type, intent, and topic, so reports can split share of voice by segment rather than blending everything into one score.

Personas are the decision clients underestimate. If a finance director and an operations lead ask the same question with different constraints, they can get different answers. Promptwatch personas, with persona stacking, let us track visibility per buyer type. We only add them where the client's sales team can name the difference. Otherwise they multiply response usage without changing a recommendation.

Location is the other one. Country-level tracking is the default. For regional clients we add state or city tracking, which is included on every agency plan. A plumber in Rotterdam doesn't care about national visibility.

Before tracking starts, the client signs off on the full set in a table: prompt, segment, volume, difficulty, persona, location, and our reason for including it. We also show query fan-outs for a few core prompts, meaning the searches a model ran behind an answer. That tends to end the debate about why we phrased a prompt the way we did.

Week two into three: competitors

Promptwatch auto-discovers competitors from the answers it collects. We compare that list with the one the client gave us. The overlap is usually obvious. The surprises are more useful: a directory, a marketplace, or a niche specialist that keeps getting named and that nobody on the client side considered a rival.

We keep the comparison set small and date it, because share of voice only means something relative to a fixed list. If a competitor URL keeps showing up in citations, we add it to Page Tracker so we can see exactly which prompts it wins.

Week three: the baseline

By now the first full collection cycle has landed. The baseline report captures visibility by model, share of voice, position in answers, sentiment, and citation sources: pages, domains, Reddit threads, YouTube videos, and offsite mentions where the brand is named without a link. It also includes the first weeks of crawler activity and any AI-referred visits.

We label all of it as a snapshot. A few weeks of answers is a starting point, not a trend, and we say so on the first page.

Week four: first fixes

The first fixes come from three places, and we take them in this order.

Crawl errors first. Agent Analytics flags failed crawler requests and explains why they failed. A priority page returning errors to an AI crawler is the cheapest problem we'll ever fix, and nothing else we do on that page matters until it's solved.

Then site audit findings that affect crawlability: blocked resources, redirect chains, pages missing from the sitemap. These usually need the client's developers, so we get the tickets in early.

Then content gap analysis. Its coverage scores show which tracked prompts the client's pages don't answer well. We pick a short list of existing pages to improve before proposing anything new, and publish through the WordPress plugin or the client's CMS with a review step. The Action Board collects all of this as a to-do list, and the Discovery agent adds up to five evidence-backed suggestions each week, which we triage in the weekly call.

What the client sees at day 30

The day-30 report is a PDF, white-labeled with our branding, and it gets scheduled to repeat from then on. It contains:

  • The scope: models, markets, personas, competitors, and the signed-off prompt set.
  • The baseline snapshot, clearly marked as one.
  • An access table showing what's connected and what's still pending, with an owner next to each open item.
  • Fixes shipped, each with its date and whether an AI crawler has fetched the page since.
  • The queue for month two, ranked.

What it doesn't contain is a trend claim. At day 30 the honest message is that measurement works, the obvious blockers are gone, and the numbers from here on are comparable.

Why we run onboarding in one place

The checklist works because every connection lands in the same project. Search Console feeds Prompt Explorer, crawler logs arrive from the CDN or the WordPress plugin, and visitor analytics comes through GTM. The site audit and content gap analysis then turn that data into the first month's fixes. We run client onboarding on Promptwatch for exactly that reason: by day 30, Agent Analytics can show whether the pages we fixed have been crawled again, which is the first piece of cause and effect a client sees. If you want this run on your site, send the access list request our way at hello@1001seomedia.com.