Can I do AEO myself or do I need an agency
Yes — DIY week one: extractable answers, matching schema, and allow GPTBot. Hire for competitive categories, a measurement stack, or entity-cleanup work.
William Spurlock Founder — Spurlock Studios 30 MIN
Yes — you can do Answer Engine Optimization yourself in week one if you will ship extractable answers on the pages that make money, add schema that matches those sentences, and allow GPTBot — plus the search crawler that actually feeds ChatGPT. Hire help when the category is already owned by corroborated competitors, when leadership wants a measurement stack nobody will operate, or when entity facts conflict across markets and no internal owner can force a winner.
This is not the 30-day DIY program. That operating gate — freeze a prompt panel, run week 1 vs week 4, hire when you are blind to your own gaps — lives on DIY AEO vs hiring. This page is the operator week-one vs hire fork: what you ship before anyone invoices you, and the three reasons a week of self-serve still is not enough. Method lives in the Answer Engine Optimization playbook. The scoreboard change — rank and CTR vs citation, mention, and accuracy — lives on AEO vs SEO.
I will not invent a monthly AEO retainer, a “typical agency” band, or a guaranteed Overview slot. Those numbers are not Spurlock Studios pricing and they are not a quality signal. Google does not sell a citation. OpenAI does not run a submission portal.
The short answer
- DIY this week if one named person can rewrite money-page leads, publish matching Organization / FAQ markup, and stop blanket-blocking OpenAI crawlers.
- Allow GPTBot if you want training inclusion. Allow OAI-SearchBot if you want ChatGPT search answers to be allowed to show you. They are separate tags (OpenAI crawler docs).
- Hire the category when recommendation prompts already name three firms with roundups, reviews, and docs you cannot match from your homepage this week.
- Hire the stack when the job is multi-engine share of voice, multiple markets, and a log leadership will fund — not a spreadsheet you will abandon.
- Hire entity cleanup when name, NAP, product, and schema disagree across cities or leftover press, and the argument is internal.
| Fork | DIY this week | Hire |
|---|---|---|
| Quote-ready copy | First 80 words + FAQ on 2–5 money URLs | Sample + brief only if you will not write |
| Schema | Organization on home/About; FAQPage where FAQs are visible | Theme-level JSON-LD when marketing cannot touch the template |
| Crawlers | Allow GPTBot and OAI-SearchBot unless legal already said no | WAF / bot-fight exceptions security will not ship |
| Competitive category | You can still be the clearest owned page | Displacement needs corroboration you do not control |
| Measurement | Eight to twelve screenshots, same wording | Multi-engine SOV, geos, executive cadence |
| Entity | One brand, one market, one fact sheet | Multi-market matrix nobody inside will finish |
A week of hygiene is literacy. A retainer before the crawlers can fetch you is theater.
Can I do AEO myself this week?
Yes, for a bounded slice: make the site quoteable and fetchable. That is not “do AEO forever.” It is the work an operator can finish before arguing about agencies.
Google’s site-owner floor is ordinary Search eligibility. To appear as a supporting link in AI Overviews or AI Mode, a page must already be indexed and snippet-eligible. There is no extra AEO file format (Google Search Central: AI features). Google’s generative-AI guide is the same idea in more words: crawlable text, useful structure, structured data that matches the visible page — and no special llms.txt requirement for Google Search (Google AI optimization guide).
ChatGPT is a different door. OpenAI splits training and search. Disallowing GPTBot tells them not to use the crawl for foundation-model training. Disallowing OAI-SearchBot is what keeps you out of ChatGPT search answers (you can still show up as a navigational link). The settings are independent. Search robots.txt changes can take about 24 hours (OpenAI crawler docs).
I have been SEO certified since 2021 and I have shipped hundreds of production sites. Week-one AEO is still publishing a sentence a model can lift, then not hiding that sentence from the bots that would lift it.
| DIY this week | Not DIY this week |
|---|---|
| Answer-first leads on pages that already rank or convert | Displacing a category with ten independent roundups |
| Organization / FAQ JSON-LD that copies visible copy | Inventing a proprietary “AEO schema” |
robots.txt allow for GPTBot and OAI-SearchBot | Buying a guaranteed ChatGPT mention |
| Screenshot a frozen handful of buyer prompts | A 40-prompt panel you will not re-run |
| One fact sheet legal can sign | Reconciling three markets of leftover PR |
- One named owner with CMS + Search Console
- Authority to edit About, offer copy, and robots.txt (or a ticket eng will take this week)
- A public offer a model can describe without a sales call
- Legal will not freeze every factual sentence
- You can name three competitors you will not keep adding
Three empty boxes → you do not have a DIY week. You have a wish. Hire the scoreboard, or admit AI visibility is not this week’s job.
What does operator week one actually include?
Five working days. Not a content calendar. Not a 30-day panel. The 30-day cousin is a measurement program. This week is a quote-and-fetch program.
| Day | Operator job | Done when |
|---|---|---|
| 1 | Freeze three sentences: who you are, who it is for, what you sell. Rewrite the first 80 words on the top money page so those sentences come first. | A stranger can quote the offer without scrolling |
| 2 | Add 4–6 visible FAQ headings on that page (and one sibling URL if you have time). Questions a buyer would ask out loud. | FAQ answers are 40–80 words and match the lead |
| 3 | Organization JSON-LD on home or About. FAQPage only where the FAQs are on the page. | Markup repeats the visible name, URL, and offer — not a better story |
| 4 | robots.txt: allow GPTBot and OAI-SearchBot unless counsel already forbade training. Hand security the WAF exception. Confirm Search Console still includes Search generative AI features. | Diff + rollback owner |
| 5 | Run 8–12 buyer prompts in ChatGPT (search on) and on two Overview-bearing queries if they fire. Same wording twice if you can. | A table: cited / mentioned / wrong + URL |
Day-by-day is less important than the gates:
- No extractable lead → schema is decorating fog.
- Schema that disagrees with the hero → you authored a conflict.
- Bots still blocked → you optimized a door you locked.
- No screenshots → you cannot tell Monday from Friday.
Skip the vanity of twelve new posts. Google’s own AI-optimization note still punishes scaled commodity pages written to “cover every fan-out query” (Google AI optimization guide). One money URL that states the offer beats a week of outline dumps.
- Money-page lead is a sentence, not a mood
- FAQs are visible HTML, not an accordion that never renders text
- JSON-LD validated against the live HTML, not a staging lie
- robots.txt change has a human who can revert it
- Prompt wording is written down so Friday is comparable
Honest hours for this week only — not the 30-day ritual:
| Block | Hours this week | Owner |
|---|---|---|
| Extractable leads + FAQs | 3–6 | Marketing / founder |
| Organization / FAQ JSON-LD | 1–3 | Eng + the fact sheet |
| robots.txt + WAF exception | 0.5–2 | Security |
| GSC verify + generative AI control | 0.5 | Same as leads |
| 8–12 screenshots | 1 | Same as leads |
If you cannot put those blocks on a real calendar, you do not have a DIY week. You have a thread. Hire the scoreboard, or stop.
If Friday’s log is empty, you did not DIY AEO. You had meetings about AEO.
What is an extractable answer you can ship without an agency?
An extractable answer is a 40–80 word block that still makes sense if a model copies it with no surrounding paragraph. Atmosphere is not extractable. A slogan is not extractable. “We partner with ambitious teams” is not extractable.
Google asks for important content in textual form and for structured data that matches what people see (Google AI features). ChatGPT Search rewrites a prompt and fetches partner results; if those results cannot lift a faithful span, they lift a competitor’s table instead. You do not need an agency to write a lead. You need to stop hiding the offer under a reel.
| Page type | Extractable lead (shape) | What to delete from the first screen |
|---|---|---|
| Service / offer | “We [do job] for [ICP] in [scope]. You get [outcome]. We do not [non-goal].” | Founder origin myth |
| Comparison | “Pick A if X. Pick B if Y. We are A.” | Feature laundry with no loser |
| Local | “[Trade] in [city] for [job]. Licensed for [scope]. Serves [area].” | Stock skyline + “family owned” with no noun |
| About | Legal name, what you sell, who it is for, where you operate | Awards with no dates |
| FAQ row | Direct answer in sentence one, proof in sentence two | “Great question!” |
Procedure for one URL:
- Open the live page. Copy the first 80 words into a doc.
- Ask: would I paste this into ChatGPT as the definition of us? If no, rewrite until yes.
- Put the new lead in HTML text — not only in a hero image, canvas, or client-rendered island.
- Add one table or numbered method the model can lift.
- Publish. Screenshot the prompt that should cite this URL.
I will not claim a word-count that buys an Overview. Google says there is no ideal page length and that you should not rewrite solely for AI systems (Google AI optimization guide). The operator rule is narrower and still true for chat engines: if the first breath is not the answer, DIY week one changed nothing a retriever can use.
- Lead states who / what / for whom
- One structured block (table, steps, or FAQ) on the same URL
- No
nosnippet/max-snippet:0on that answer - Canonical points at the URL you want cited
- Internal link from a page that already gets crawled
Five money URLs done this way beat a “thought leadership” sprint. Agencies that start with a blog calendar before this rewrite are selling volume. Volume without a quote is crawl bloat.
What schema can you add in week one?
Schema that copies the page. Not schema that invents a better company.
Google’s Organization markup lives on the home page or a single About page. There are no required properties; add what is true. It exists to disambiguate you — name, URL, logo, sameAs — not to “rank you in AI” (Google Organization structured data; schema.org Organization). Google’s generative-AI guide is blunt: structured data is not required for AI Overviews / AI Mode, and there is no special AEO type. Keep using it for ordinary Search features and for a consistent entity (Google AI optimization guide).
FAQPage is still a schema.org type for classifying visible Q-and-A (schema.org FAQPage). Write the answers so a model can quote them. Do not build week one around a rich-result screenshot. Google has limited FAQ rich results; extraction is the point here, not a SERP decoration.
| Type | Week-one yes | Week-one no |
|---|---|---|
Organization | name, url, logo, sameAs that match the visible About | A second legal name only in JSON-LD |
LocalBusiness (if you are local) | NAP that matches GBP and the footer | A city you do not serve |
FAQPage | Questions that appear as headings on that URL | FAQ markup for copy that is not on the page |
WebSite / WebPage | Canonical URL honesty | Five competing @id graphs |
| “AEOObject” (invented) | Never | Any vendor file that is not on schema.org |
Minimum JSON-LD test:
- View source or rendered HTML. The JSON-LD
nameequals the visible brand. urlis the host you want identified — not a staging domain.sameAsURLs return 200. Dead profiles are conflicts.- FAQ markup has the same question strings as the H2/H3s.
- Rich Results Test or URL Inspection on the live URL, not only localhost.
Marketing can write the fact sheet in a doc. Engineering ships the template. Mixing those jobs is how silent drift starts: the CMS says “automation studio” and the JSON-LD still says “web design agency.”
If you cannot touch the theme this week, publish the extractable copy anyway. Markup that waits a sprint is still cheaper than hiring an agency to “do schema” on sentences you have not written.
Why allow GPTBot (and which other bots) in week one?
Because a common “security” default is to block every user-agent that contains “GPT” or “GPTBot,” and that default is how you opt out of training and, if the rule is sloppy, search.
OpenAI’s own table is the spec you hand security (OpenAI crawler docs):
| User-agent | Job | robots.txt | What “allow” means |
|---|---|---|---|
GPTBot | Training crawl for foundation models | Honored | Future models may see your public pages |
OAI-SearchBot | ChatGPT search index / citations | Honored | You can appear in ChatGPT search answers |
ChatGPT-User | User-triggered fetch | May not honor robots.txt | A person asked ChatGPT to read a URL |
OAI-AdsBot | Ad landing-page checks | Honored | Only if you run ChatGPT ads |
Week-one default for a brand that wants AI visibility:
User-agent: GPTBot
Allow: /
User-agent: OAI-SearchBot
Allow: /
If counsel forbids training, disallow GPTBot only. Do not copy that disallow onto OAI-SearchBot unless you also intend to leave ChatGPT search. OpenAI says the tags are independent, and that if both bots are allowed they may reuse one crawl (OpenAI crawler docs). IP allowlists: gptbot.json and searchbot.json. User-agent matching without IPs is how you whitelist a spoof.
Google’s control for Search AI features is still Googlebot, not a separate “Overview bot.” Google-Extended is the training / grounding lever for some other Google systems, not the switch for AI Overviews (Google AI features). Search Console’s Search generative AI control defaults to include; exclude is a site-owner choice and does not replace noindex (Search Console: Search generative AI control). DIY teams skip that screen, then argue about Overviews on a property that is excluded or unverified.
| Failure | What it looks like | Fix this week |
|---|---|---|
Blanket Disallow: / for *GPT* | Training and search gone | Split the tags |
| WAF challenge on “bots” | 403 / JS wall for OpenAI IPs | Allowlist published ranges |
nosnippet on money pages | Eligible for rank, ineligible for Overview quotes | Remove preview locks on the answer |
| GSC generative AI = exclude | Overviews cannot use you | Flip include, then wait on recrawl |
| robots.txt on the wrong host | www vs apex vs CDN | One file on the host Googlebot fetches |
- Written training-versus-search policy, even if it is three lines
-
GPTBotallowed or explicitly disallowed — not accidental -
OAI-SearchBotallowed if ChatGPT search is a goal - WAF owner has the JSON ranges, not a tweet
- GSC property verified; generative AI control is include
Allowing GPTBot is not a citation. It is permission for training crawls. If the only bot you “allow” is a CDN default that still challenges OAI-SearchBot, Friday’s ChatGPT run will keep recommending someone else.
When is DIY enough after week one?
DIY is enough when the category is still winnable from owned pages, the entity is one brand in one market, and someone will keep a log. You do not need an agency to stay quoteable. You need a ritual.
Keep it in-house after Friday if all of these hold:
| Condition | Pass | Fail |
|---|---|---|
| Category | Your money pages can be the clearest public definition | “Best X” already returns a stable shortlist of someone else |
| Entity | One name, one NAP, one offer | Three cities, two product names, leftover press |
| Access | CMS + robots.txt + GSC in one owner’s hands | Every edit is a legal ticket with a two-week SLA |
| Log | You will re-run the same 8–12 prompts next week | “We’ll check ChatGPT sometime” |
| Corroboration | A few third-party URLs already repeat your facts | The open web only knows a 2019 product name |
Decision list:
- If week-one screenshots already name you accurately on brand prompts, stay DIY and widen extractable pages.
- If brand probes are empty or wrong, stay DIY on facts — that is still your site and your directories.
- If recommendation prompts name competitors with independent URLs you cannot earn this quarter, that is a hire conversation, not another blog.
- If nobody will log next week, do not announce a program. Hire a scoreboard or stop.
The 30-day panel, go/no-go, and “hire when you are blind” sequence is the other post. After week one you either have a quoteable site or you do not. If you do, the next honest question is whether the category, the stack, or the entity matrix is bigger than one operator. Those three are this page.
I have spent 20,000+ hours on agentic systems and I still will not tell you DIY “doesn’t scale.” Plenty of single-brand sites never need a visibility vendor. They need Friday’s table to exist.
When do you hire for a competitive category?
Hire when the prompts that make money are recommendation and comparison prompts, and the answers already cite a corroborated set you cannot match from owned pages this week.
Ahrefs’ March 2026 pass on 863K SERPs found only about 38% of AI Overview citations also sat in that query’s top 10 — down from about 76% in July 2025 (Ahrefs: AI Overview citations and the top 10). Rank helps. It does not assign the cite. In a competitive category the Overview and the chat shortlist are sampling corroboration, extractable criteria pages, and fan-out sub-questions — not your average position.
| Signal | Still DIY | Hire the gap map |
|---|---|---|
| Brand prompt (“what is [you]”) | Wrong or thin — fix About | Accurate, and you still lose “best [category]” |
| “Best [category] for [job]” | You appear as an also | Three names, stable, none of them you |
| Comparison “[you] vs [rival]” | You can publish an honest table | The cited URLs are third-party roundups you are not in |
| Local “best [trade] in [city]” | GBP + site + directories agree | Directories and city pages belong to a chain |
| Fan-out bullets in an Overview | You can cover two missing H2s | The cited set is docs + listicles you will not out-publish this month |
Confirm it in one sitting before you hire:
- Run five revenue prompts: two “best [category],” two “[you] vs [rival],” one local or ICP-specific if that is real.
- Write down every cited domain. Owned vs independent.
- If three or more independent domains agree on a shortlist that excludes you, the category is competitive.
- If the only independent URL is a directory you can edit this week, stay DIY on corroboration hygiene.
- If the cited set is listicles + docs you will not earn this quarter, hire the gap map — not another homepage rewrite.
Competitive does not mean “we have competitors.” Every operator has competitors. Competitive here means the retrieval set is already independent of you. Your homepage cannot out-vote ten listicles and a review graph in five days.
What you are hiring for:
- A citation-gap list: which URLs appear when you are absent, and whether you can earn a similar page or only out-write a clearer owned page
- A non-goal list: which prompts you will not chase in v1
- A corroboration target list you will not bias because you “know” the friendly journalist
What you are not hiring for:
- A promise of page-one Overviews in 30 days
- A content blast that ignores the gap URLs
- A renamed SEO retainer with “AEO” in the deck title
If you already know the five owned-page fixes and refuse to ship them, do not hire. An audit will reprint your avoidance in better typography.
When do you hire for a measurement stack?
Hire the stack when the job is no longer “did ChatGPT mention us on Tuesday” and has become a multi-engine, multi-market log that leadership will treat as a KPI — and you will not operate that log.
Google reports AI Overviews and AI Mode inside Search Console’s web performance, not as a magic AEO tab (Google AI features). There is now a Generative AI performance report for those Search features (Google AI optimization guide). That still will not log ChatGPT citations. Pew’s July 2025 analysis of March 2025 browsing found users clicked a traditional result on 8% of visits with an AI summary versus 15% without one, and clicks on links inside the summary happened on 1% of those visits (Pew Research Center). Sessions will not tell you if you were named. A prompt log will.
| Measurement job | DIY | Hire the stack |
|---|---|---|
| 8–12 prompts, one brand, one market | Spreadsheet + screenshots | You skipped even this |
| Frozen IDs, weekly re-run | Owner on the calendar | Three people “share” the ritual |
| ChatGPT + a handful of Overviews | Human panel | Plus Perplexity, AI Mode, two languages, five geos |
| Accuracy tickets from wrong facts | Rows in the same sheet | Entity matrix across products and cities |
| Executive scoreboard | A monthly export | Weekly SOV they will fund against pipeline |
A stack is not a logo. It is:
- A frozen prompt panel with revenue vs vanity tags
- Engines named per row (do not mix ChatGPT and Overviews in one cell)
- Citation vs mention vs accuracy, logged separately
- A comparable cadence (same IDs, same wording)
- Someone who will open the sheet when the number is ugly
Buy vendor software after two comparable DIY baselines. If you cannot produce Friday’s 8–12 rows without a procurement cycle, ownership is the gap, not the dashboard.
I will not invent a “good” citation rate. Answers are non-deterministic. One screenshot is anecdote. A hired stack that produces a heat map with no prompt IDs is still anecdote, just more expensive.
When do you hire for entity cleanup across markets?
Hire entity cleanup when the public record of you is a pile of leftover names, and no internal owner can pick the winning sentence.
Models quote whatever is easiest to lift. If the Detroit page, the Toronto page, a 2023 press mention, and Organization name disagree, the model does not know which lie is official. You cannot see that from inside because you know which page is “the real one.”
| Mess | What AI does | Why DIY stalls |
|---|---|---|
| Two trading names | Swaps you for a same-name company | Legal will not retire a DBA in public |
| Multi-location NAP drift | Invents a city or an old phone | Each location “owns” its footer |
| Product rename | Recommends the dead SKU | Docs and partner pages still rank |
| Offer vs About vs schema | Mixed description, then skips the recommendation | Three teams, no fact owner |
| International sites | Mixes markets into one entity | Canonical and hreflang fights |
Google says Organization markup can include multiple addresses when you truly have them, and that name / alternateName should match the site name you show people (Google Organization structured data). That is permission to be complete. It is not permission to publish two truths.
Week-one DIY still applies inside one market: freeze three sentences, match schema, allow the bots. The hire is the matrix:
-
One source-of-truth fact sheet per legal entity
-
Which URL wins for which market
-
Which leftover URLs redirect or get a clarifying sentence
-
Directory / GBP /
sameAsrows that must be edited in the same week -
A ranked conflict list an outsider will not politely skip
-
You can list the conflicting URLs (not “we’ll remember”)
-
One person can force the winning name this month
-
Locations have owners who will change NAP
-
Press leftovers have a plan (correction, noindex, or a dated note)
-
Schema will be updated in the same release as the copy
If those boxes are empty, an agency is not “doing AEO.” They are doing records. That is still a legitimate hire. Call it entity cleanup so you do not buy a content calendar instead.
What still fails if you skip week one and buy help?
You pay for a PDF about a site that is still unquoteable or unfetchable. The failure is not the vendor. It is the sequence.
| Skip | What the hire inherits | What it costs |
|---|---|---|
| No extractable leads | They audit slogans | A month of “tighten messaging” |
| Schema vs visible copy | They score a conflict you authored | Rework when legal finally picks a sentence |
| Bots blocked | They baseline absence | You “prove AEO doesn’t work” |
| GSC unverified / excluded | They cannot see Overview performance | You argue about a control you never opened |
| No named owner after the PDF | Orphan dashboard | Month two is silence |
I have seen the same pattern across 600+ automations built and 500+ live: unowned ritual looks cheap and wastes a quarter. Visibility is not special. An audit with no operator is a slide deck.
Do this before you send a statement of work:
- Publish the week-one leads on the URLs that make money.
- Ship matching Organization markup or a dated ticket with an owner.
- Allow
GPTBotandOAI-SearchBot(or write the legal exception). - Take the 8–12 screenshots. Attach them to the brief.
- Ask the vendor what they will do that those five steps did not.
If the proposal cannot point at competitive displacement, a measurement stack, or an entity matrix, you are buying week one at a markup. Run week one. Then hire for the leftover fork.
How do you tell DIY is working without a vendor dashboard?
You compare the same prompts, not your feelings. Citation rate on a frozen handful of IDs. Mention rate. Accuracy of the brand facts. That is enough to decide whether to keep DIY, hire a category map, hire a stack, or hire entity cleanup.
| Check | DIY evidence | Not evidence |
|---|---|---|
| Fetchable | URL Inspection 200; bots allowed | “It loads on my phone” |
| Quoteable | Lead + FAQ match the offer | Traffic went up |
| Brand accuracy | “Who is [you]” no longer invents a year | A like on the recap post |
| Recommendation | Same “best [category]” prompt, week-over-week | One lucky ChatGPT run |
| Overview | Same query, cited vs not, logged | Average position in GSC |
Procedure:
- Freeze 8–12 strings on Friday of week one. Do not improve the wording mid-test.
- Tag each row revenue or vanity. Vanity cannot drive a hire.
- Record engine, date, cited URL, mention-only, accuracy note, who else got the cite.
- Re-run next week only after you published a fix, or on a fixed cadence if you shipped nothing.
- Decide with the table: stay DIY, hire category, hire stack, hire entity, or stop.
Search Console’s generative-AI report is extra for Google surfaces. It does not replace the ChatGPT rows.
Ugly and measured beats a dashboard you do not open. If the number is still ugly after extractable pages, open bots, and matching schema, you have a real hire question. If the number is ugly because you never published the lead, you have a publishing question.
What should you skip if you only have a week?
Skip everything that is not extractable answers, matching schema, or crawler access. A week is enough to become quoteable. It is not enough to become the category.
| Do | Skip |
|---|---|
| Rewrite 2–5 money URLs answer-first | A 40-post calendar |
| Organization + visible FAQs | A new “AEO” schema type |
Allow GPTBot and OAI-SearchBot | Blanket-block “all AI crawlers” after a webinar |
| 8–12 prompt screenshots | A visibility SaaS trial |
| One fact sheet | A rebrand |
| GSC include + verify | An agency retainer conversation that replaces publishing |
| One honest comparison table | Digital PR to 40 sites with the old product name |
Numbered skip list if time collapses:
- Do not hire a retainer to avoid editing About.
- Do not start
llms.txtdecoration that points at contradictory URLs. Google does not need the file for Search AI features (Google AI optimization guide). - Do not rewrite the whole blog in “AI voice.”
- Do not buy links to “get in Overviews.” Eligibility is snippet + index, then extractability (Google AI features).
- Do not run a new prompt list every day. Freeze, or the delta is fake.
If the week is really two afternoons, do Day 1 and Day 4: extractable lead on the top URL, then bots. Schema can slip three days. A blocked OAI-SearchBot cannot.
When is this not worth doing yet?
Skip AEO — DIY or hired — when there is no public offer a model is allowed to describe, nobody who can publish facts, or the site is not in Search.
| Blocker | Why AEO is theater | Do this instead |
|---|---|---|
Not indexed / noindex on money URLs | Overviews cannot cite you; chat retrieval is guessing | Fix indexation |
| Stealth / no public offer | Models will hallucinate or skip | Publish the offer or wait |
| No named owner | Week one will not ship | Assign a name or stop |
| Legal parks every sentence | Schema and About stay contradictory | One approved paragraph |
| You want a guarantee | Nobody sells citations | Do not buy that pitch |
| You already know the fixes and will not ship | An audit is a mirror | Ship or admit you will not |
A visibility audit is the right hire after week one when the leftover work is competitive corroboration, a measurement stack, or entity cleanup. It is the wrong hire when the homepage still will not say what you sell.
Spurlock Studios’ visibility lane exists for the first leftover list. The second list needs an internal decision, not a PDF.
Day-five decision table:
| What Friday showed | Next step |
|---|---|
| Brand probe is accurate; bots open; leads are quoteable | Stay DIY; widen pages. Use the 30-day gate only if you will log |
| Recommendation prompts are a closed shortlist | Hire the category gap map |
| You cannot compare two weeks without three tools and two geos | Hire the measurement stack — after one human baseline |
| Facts still conflict across markets | Hire entity cleanup |
| Screenshots never happened | You did not DIY. Start, or stop talking about AEO |
| Vendor wants a retainer before robots.txt is honest | Walk. Sequence is the product |
Run week one. Hire for category, stack, or entity — not because a webinar said agencies own AEO.
FAQ
Can I do AEO myself or do I need an agency?
Yes — do it yourself in week one: extractable answers on money pages, schema that matches those sentences, and allow GPTBot plus OAI-SearchBot. You need an agency (or an outside audit) when recommendation prompts already belong to corroborated competitors, when leadership wants a multi-engine measurement stack you will not operate, or when entity facts conflict across markets. Do not hire to skip publishing the offer. The 30-day panel-and-blindness gate is the cousin post, not this one.
How do I measure whether can I do AEO myself or do I need an agency is working?
Log the same 8–12 buyer prompts weekly: cited, mentioned, or wrong, with the URL and the engine. DIY is working when brand accuracy improves after the week-one rewrites and bots are actually allowed. Hire signals are a stable competitor shortlist you cannot enter, a stack you will not staff, or an entity matrix you cannot freeze. Search Console’s generative-AI report helps for Overviews; it does not replace ChatGPT rows.
What usually fails first when teams try this?
They blanket-block AI crawlers, or they ship schema that disagrees with the hero. The next failure is a blog sprint with no 40–80 word lead a model can lift. Insider blindness is the expensive one: you know which page is official; the model quotes the leftover press mention. Two of those at once is a hire-or-stop, not a reason to buy more adjectives.
How long does this take to show results?
Week one is hygiene, not a citation SLA. OpenAI says search robots.txt changes can take about 24 hours; Google recrawl after preview or markup changes can take days to months (OpenAI crawler docs; Google AI features). Citations are non-deterministic, so one Friday screenshot is anecdote — re-run the same IDs. If brand facts are still wrong after published fixes and open bots, the leftover work is corroboration or entity cleanup, not another week of outlines.
What should I skip if I only have a week?
Skip the content calendar, the visibility SaaS trial, the rebrand, and any retainer conversation that replaces editing About. Do extractable leads, matching Organization / FAQ markup, crawler allows, and a handful of frozen screenshots. If time collapses further, do the top money URL and the robots.txt split. Do not decorate llms.txt that points at contradictory pages.
When is this not worth doing yet?
When money URLs are noindex, the offer is not public, nobody can publish facts, or you are shopping a guarantee Google and OpenAI do not sell. Also when you already know the week-one fixes and refuse to ship them. AEO on a stealth page is a hallucination factory. Index, say what you sell, then decide DIY vs hire.
CTA
Ship week one. Hire for category, stack, or entity — not for a slide deck about bots you still block.
Lane overview: /visibility. Outside pass when the leftover work is real: visibility audit.
What questions does this article answer?
- Can I do AEO myself or do I need an agency?
- Yes — do it yourself in week one: extractable answers on money pages, schema that matches those sentences, and allow GPTBot plus OAI-SearchBot. You need an agency (or an outside audit) when recommendation prompts already belong to corroborated competitors, when leadership wants a multi-engine measurement stack you will not operate, or when entity facts conflict across markets. Do not hire to skip publishing the offer. The 30-day panel-and-blindness gate is the cousin post, not this one.
- How do I measure whether can I do AEO myself or do I need an agency is working?
- Log the same 8–12 buyer prompts weekly: cited, mentioned, or wrong, with the URL and the engine. DIY is working when brand accuracy improves after the week-one rewrites and bots are actually allowed. Hire signals are a stable competitor shortlist you cannot enter, a stack you will not staff, or an entity matrix you cannot freeze. Search Console’s generative-AI report helps for Overviews; it does not replace ChatGPT rows.
- What usually fails first when teams try this?
- They blanket-block AI crawlers, or they ship schema that disagrees with the hero. The next failure is a blog sprint with no 40–80 word lead a model can lift. Insider blindness is the expensive one: you know which page is official; the model quotes the leftover press mention. Two of those at once is a hire-or-stop, not a reason to buy more adjectives.
- How long does this take to show results?
- Week one is hygiene, not a citation SLA. OpenAI says search robots.txt changes can take about 24 hours; Google recrawl after preview or markup changes can take days to months ([OpenAI crawler docs](https://developers.openai.com/api/docs/bots); [Google AI features](https://developers.google.com/search/docs/appearance/ai-features)). Citations are non-deterministic, so one Friday screenshot is anecdote — re-run the same IDs. If brand facts are still wrong after published fixes and open bots, the leftover work is corroboration or entity cleanup, not another week of outlines.
- What should I skip if I only have a week?
- Skip the content calendar, the visibility SaaS trial, the rebrand, and any retainer conversation that replaces editing About. Do extractable leads, matching Organization / FAQ markup, crawler allows, and a handful of frozen screenshots. If time collapses further, do the top money URL and the robots.txt split. Do not decorate `llms.txt` that points at contradictory pages.
- When is this not worth doing yet?
- When money URLs are `noindex`, the offer is not public, nobody can publish facts, or you are shopping a guarantee Google and OpenAI do not sell. Also when you already know the week-one fixes and refuse to ship them. AEO on a stealth page is a hallucination factory. Index, say what you sell, then decide DIY vs hire.
Last reviewed
AI Visibility
AI Visibility Cannabis visibility when the ad accounts are banned
Google and Meta will not take the usual spend. The models still answer dispensary, cultivator, and brand questions — if the site can be read and the cart can clear a 21+ order.
AI Visibility When ChatGPT names the franchise, not your shop
Run the best-HVAC-near-me prompt panel. If the model names a national franchise, fix corroboration and entity facts — not another blog calendar.
AI Visibility How do I get cited by Perplexity specifically
Allow PerplexityBot, put a liftable answer and unique numbers in HTML, then log numbered sources on a frozen prompt panel. There is no bought citation rate.
AI Visibility Does Wikipedia or Wikidata help AI recommend my brand
Wikipedia is not a paid AI lever. Notability plus independent sources decide the page; a real Wikidata item helps entity consistency, not a promotional stub.
Will's Journal in your inbox.
What I learned this week building for shops, floors, and houses.
You're on the list.
Sign-up failed — try again.
By subscribing, you agree to the Privacy Policy.