Answer engine optimization starts with your website, and many B2B websites fail the first test: some AI tools can’t read them. In a June 2026 test of 12 AI assistants, ChatGPT, Claude, Gemini, and Perplexity read only the raw HTML a server sends and never ran the page’s JavaScript. If your headings, copy, or FAQ answers are built by scripts in the browser, those tools see an empty page.
That shaped how we rebuilt revvdup.xyz after WordPress was compromised again. The evidence on what AI tools run is still moving, so we designed for the worst case: everything in plain HTML. This post covers what happened, why we chose Astro and static HTML, and why a website that educates buyers before the sales call is worth more than another ad.
Answer engine optimization: can ChatGPT, Claude, and Perplexity read your website?
Yes, if your content is in the HTML your server sends. If it only appears after JavaScript runs, it depends on the tool, and the answer keeps changing.
The cleanest recent test I found is a June 2026 experiment by Andre Alpar. He gave 12 AI assistants a page whose raw HTML showed a decoy reference number while a script swapped in the real one. ChatGPT, Claude, Gemini, Perplexity, Meta AI, and Microsoft Copilot all reported the decoy, which means they read the HTML and never ran the script. Grok ran the script on one server but ignored the result. DeepSeek, ERNIE, Qwen, Kimi, and Mistral reported the real number, so they do run JavaScript.
Treat that as a snapshot, not a law. It was one site, one prompt per assistant, and one moment in time, and it only covers what happens when a user asks about a specific page, not what each tool’s background crawlers do. Those may behave differently. One developer’s server logs, posted September 30, 2026, suggest OpenAI’s OAI-SearchBot and GPTBot began rendering JavaScript on September 25. OpenAI hasn’t confirmed that, and its crawler documentation doesn’t mention JavaScript either way. A Vercel study from December 2024 found that no major AI crawler ran JavaScript at all, so the behavior is clearly moving.
That is the point. When the evidence shifts every few months, the safe design is the one that works under every outcome: put your headlines, copy, FAQ answers, and structured data in the HTML your server sends. Tools that don’t render still read it. Tools that do render still read it. You never depend on a vendor’s undocumented behavior or on a rendering queue.
You can check your own site in thirty seconds. This simulates the worst case, a crawler that reads only the raw HTML:
curl -s -A "GPTBot" https://yourdomain.com/ | grep -c "<h1"
curl -s -A "GPTBot" https://yourdomain.com/ | grep -c "application/ld+json"
If the first number is 0, or the copy you care about is missing from the output, a tool that doesn’t run JavaScript sees an empty page. On the new revvdup.xyz, the same request returns the full page: the headline, section headings, navigation, and structured data. The home page’s only script tag is the structured data itself.
Google’s own guidance is simpler than the AI-optimization industry makes it sound. Its documentation on AI features says a page only needs to be indexed and eligible to show in Google Search with a snippet to appear as a supporting link in AI Overviews or AI Mode. It lists no additional technical requirements, and says you don’t need special files or schema markup. Answer engine optimization starts with the same fundamentals as SEO, executed cleanly.
Why did we leave WordPress?
Because it was compromised at least three times, and I was tired of cleaning it. The first two times, I cleaned it and moved on. The third time, I went looking for why cleaning kept failing. During the migration we found the answer in my media backup: a file called CacheStream.zip, dated October 8, disguised as a caching plugin.
We analyzed the code as plain text and never ran it. It was built to survive cleanup. It copied itself into WordPress’s must-use plugins folder and restored itself if removed, hid itself from the Plugins screen, created an administrator account that never appeared in the Users list, and sent login credentials to attacker-controlled servers. It also injected a script into every page that showed visitors a fake Cloudflare “verify you are human” prompt, the pattern known as ClickFix.
That explains the repeat infections. Deleting the visible plugin left the hidden copy and the hidden admin account, and they reinstalled everything. I have not confirmed how the attacker first got administrator access, so I am treating every password ever typed into that site as stolen.
This is not just bad luck. Patchstack’s 2026 report counted 11,334 new WordPress vulnerabilities in 2025, up 42% from 2024. Of those, 91% were in plugins and only six were in WordPress core. For heavily exploited vulnerabilities, the weighted median time to first exploit was five hours. WordPress itself is not the problem. The problem is a plugin stack you have to patch faster than attackers move.
Notice for visitors: If you visited revvdup.xyz between about October 8 and October 27, 2026, you may have seen a fake “verify you are human” page. If you followed its on-screen steps, such as pasting a command or running a file, scan your device with security software and change your passwords from a clean device. If you closed the page without following its steps, you most likely have nothing to clean up. Network teams: per my analysis, the malware contacted wuntred.com and ganeer.com.
On October 27 we switched the domain to the new site and the old WordPress site stopped being served. I am not cleaning it a fourth time.
Why Astro and static HTML?
Because the safest, most readable website is one with nothing to log into and nothing to execute. Astro builds every page into plain HTML ahead of time, and Vercel serves those files. Three reasons mattered most.
Security and ownership
The new site has no PHP, no plugins, no admin login, and no content database. Posts are Markdown files in a project I own, and publishing is a file plus a deploy. The one piece of server code is a small function that emails me when someone requests the case study. There is nothing to patch on a schedule and no dashboard for an attacker to find.
AI-search readability
Every heading, paragraph, FAQ answer, link, and structured-data block exists in the HTML the server sends. The site’s rule is no content behind JavaScript, so it works whether or not a given tool renders scripts. We also kept every old blog URL alive and set permanent redirects for retired pages, because dead links cost you with every crawler.
Speed and mobile
Most visitors reach a site from a phone: a QR code at a conference, a LinkedIn link, an AI answer. The site is built mobile-first, with a performance budget and no horizontal scrolling at phone width. Static pages also load fast because there is no database query or plugin chain behind each request.
How it was built
Claude wrote the plan, then built from it in Claude Code. From written plan to live domain took about four hours on October 27: roughly one hour of planning and three hours of building. I directed the work, reviewed the results, and made the calls on copy, positioning, and what to publish. That speed is only possible because the site is plain files and a clear spec, not a plugin stack.
What changed on the new site?
The rebuild was also a chance to apply what I tell clients: a website should answer buyers’ questions, not decorate a brand. The changes that matter most:
- Packages with real prices and timelines. Tune Up starts at $1,000 (about two weeks), Overhaul at $5,000 (about six to eight weeks), and Turbocharge at $6,000 a month (10 to 20 hours a week, three-month minimum). Final scope is set on a discovery call.
- Results as text. The bitcoin++ case study page states its results as text, not a graphic: 3x annual revenue year over year, 2.5x pipeline growth, 2x average deal size, and 60%+ close ratios. People and AI crawlers read the same numbers.
- One structure for every long post. A TL;DR, a results-at-a-glance box when the post has real results, a table of contents, and question-style headings with the answer in the first sentence or two. This post follows it.
- Topic pages without JavaScript. Blog filters are plain links to pre-built pages for each topic, so they work on every device and can be indexed.
Why does an organic funnel matter next to paid?
Because buyers do their research before you get a call, and paid ads rarely finish that research for them. Challenger Inc. reports that buyers are, on average, 57% of the way through the buying process before they approach a seller. A June 2025 Gartner survey of 632 B2B buyers found that 61% prefer a rep-free buying experience and that 73% actively avoid suppliers that send irrelevant outreach. Another 69% reported inconsistencies between a company’s website and what its sellers tell them.
Paid channels buy attention. An organic funnel does three jobs paid can’t:
- It qualifies. When you write with specific, uncomfortable detail about a problem, the right buyers recognize themselves and the wrong ones leave.
- It educates. A buyer who has read how you think arrives at the first call asking “how,” not “what.” The customer journey gets smoother and you spend less of the call explaining.
- It keeps your story consistent. Gartner’s 69% figure is a warning: if your website says one thing and your reps say another, buyers notice. A site built around your ICP and your real sales message closes that gap.
There is a newer reason too. AI engines are now one of the places buyers research, and they cite pages that answer the question directly. An ad is not a source an AI engine will quote. A clear, well-sourced page can be.
How can we do this for your site?
I now offer a site refresh and an AISEO-driven content strategy as an add-on to Overhaul and Turbocharge engagements. As a fractional CCO (a Chief Commercial Officer on a fractional basis), I own the commercial system end to end, so your website is part of the same work as your message, your ICP, and your sales process, not a separate project.
The process starts with who you sell to, not with keywords: your business identity, your ideal customer profile, and the problems your buyers feel. From there we project the questions they ask, check them against how real buyers describe the problem in their own words, and validate demand with real keyword and Search Console data. The output is a content plan built to be found on Google and cited by AI engines, on a site those engines can actually read.
A caution: nobody can guarantee AI citations, and anyone who does is selling you something. What you control is whether your site is readable, specific, consistent, and sourced. Scope and pricing are set on a discovery call. The call is free, and you leave knowing where your site and funnel are leaking whether or not we work together.
Frequently asked questions
What is answer engine optimization?
Answer engine optimization (AEO) is structuring your content so AI answer engines such as ChatGPT, Perplexity, and Google’s AI Overviews can find it, understand it, and cite it as the source for an answer. It builds on SEO fundamentals: crawlable pages, clear headings, direct answers, and trustworthy sources. The difference is the reader. A machine quotes your page instead of a human clicking it.
Can AI tools read JavaScript?
It depends on the tool, and it is changing. In a June 2026 live-fetch test of 12 assistants, ChatGPT, Claude, Gemini, Perplexity, Meta AI, and Microsoft Copilot read only the raw HTML, while DeepSeek, ERNIE, Qwen, Kimi, and Mistral ran the script. A developer’s server logs also suggest OpenAI’s background crawlers began rendering in late September 2026, though OpenAI hasn’t confirmed it. The safe move is to put your content in the HTML so the question never matters.
Does schema markup get my site cited by AI?
Not according to the best evidence I found. An Ahrefs study, reported by Search Engine Roundtable, compared 1,885 pages that added JSON-LD schema with about 4,000 control pages and found no major uplift in AI citations. Google’s documentation also says no special schema is required for AI Overviews or AI Mode. Keep structured data for rich results and for telling search engines who you are, but don’t count on it to win citations.
Is Astro better than WordPress for SEO?
Not inherently. Both can rank. Astro helps because it ships plain HTML, loads fast, and has no plugin stack to attack, which removes the risks that hurt us. WordPress can also be fast and secure with disciplined maintenance. The real question is whether you want to keep doing that maintenance. After at least three compromises, my answer was no.
Do I still need an organic funnel if I run paid ads?
Yes. Gartner’s survey found that 61% of B2B buyers prefer a rep-free buying experience, and Challenger Inc. reports that buyers are on average 57% of the way through the buying process before approaching a seller. Paid ads can start that process. Organic content is where the buyer finishes the research, and where an AI engine finds an answer to cite.
Want your site to be readable by AI search and to qualify buyers before the call? Schedule a discovery call.

