The wizard, step by step
The seven setup steps, what each one asks, which settings it writes, and what the recommended defaults are if you skip it.
Updated 2026-10-08 · applies to Acid AEO 1.0.4
The setup wizard has seven steps. It takes about three minutes and writes the same settings you can edit later on the settings screen.
Before you start
The wizard opens by itself right after activation. You can open it again from Setup Wizard in the Acid AEO menu. The header shows "Step 1 of 7", and a rail lists every step.
- Next saves the step and moves on. Back returns without losing answers.
- Save & exit saves the current step and sends you to the dashboard. Progress is kept in
general.wizard_step. - On step 1, Skip — use recommended defaults jumps straight to the last step, which finishes setup with the defaults. The recommended defaults are the Citable policy, all modules on except Static files, and no agency credit.
1. Welcome
The first step reports what the plugin found. The choices on this step are general.site_type (business, personal, blog, ecommerce or organization) and, when an SEO plugin is active, schema.defer_to_seo. The client also pre-fills identity and language on first run.
- Language, from the site language.
- SEO plugin: if one is found, a switch lets it own the Organization, WebSite, WebPage, Breadcrumb and Article nodes.
- Page cache: if one is found, the browser beacon (
citations.beacon) is switched on for you in step 6. - Permalinks: plain permalinks are flagged, with a Set permalinks to post name button.
- Files already on disk: a physical
llms.txt, for example, is answered by the web server before WordPress runs. An import button copies a physicalllms.txtinto the settings.
On a finished site this step is titled Reconfigure, and the button reads Reconfigure instead of Start setup.
2. Identity
Who an answer engine should say the site belongs to. The first card sets identity.schema_type: Organization, Local business, Person, Online store or Non-profit. A local business also gets a narrower type list.
identity.name(required),identity.tagline,identity.description(up to 300 characters) andidentity.logo_id.identity.email(required),identity.phone,identity.founding_dateandidentity.tax_id.- We have a physical address reveals
identity.address.*,identity.geo.lat,identity.geo.lngandidentity.opening_hours. identity.languages,identity.same_as(profile URLs, fullhttps://addresses) andidentity.founder_user_id.
3. AI policy
What AI crawlers may do with your pages. The right side shows a live preview of the generated robots.txt.
policy.preset: Citable (recommended), Search only, Open or Closed. Citable lets AI search, assistants and general fetchers read and cite the site, and turns bulk training crawlers away.- Advanced: per crawler rules write
policy.bots. Giving one crawler its own rule switches the preset to Custom. policy.content_signal.search,.ai_inputand.ai_train, each Allowed or Not allowed.policy.license(withpolicy.license_urlfor a custom licence),policy.permissions_contactandpolicy.noai_meta.
4. Content
What goes into llms.txt, humans.txt and security.txt. The preview shows llms.txt.
llms.about_text,llms.key_pages,llms.post_types,llms.posts_limit(0 to 500, default 20) andllms.taxonomies.llms.include_faq,llms.include_offeringsandllms.full_enabledforllms-full.txt.- What you offer (
offerings) and Frequently asked questions (faq). A row without a name or question is not saved. humans.enabled,humans.teamfor people without a WordPress account, andgeneral.agency_credit(off by default).security.contact,security.policy_urlandsecurity.languages.
5. Rich data
Which JSON-LD the pages carry.
- Graph pieces (
schema.pieces.*): Organization or Person, WebSite, WebPage, BreadcrumbList, Article, Author Person, FAQPage, Speakable and ImageObject licensing. With an SEO plugin deferred, the first five show "Handled by" that plugin. schema.post_type_mapgives each post type an article type. Posts default to BlogPosting.- An Authors table lists missing job titles and profiles.
- Writing tools:
content.blocks,content.meta_box,content.last_updated,content.editor_panelandcontent.markdown.
6. Discovery
Telling the engines, and counting who came back.
indexnow.enabled,indexnow.auto_submit, and the key (indexnow.key) with a Copy key button. A switch submits every URL once setup is finished.citations.enabled,citations.beaconandcitations.retention_days(default 90).static_files.enabledandstatic_files.files.headers.enabled,headers.link_headerandheaders.content_signal_header.
7. Done
Opening this step marks setup as finished, clears the plugin's caches, schedules a rewrite-rules flush and runs the first audit. You see the readiness score out of 100, the checks grouped as failed, warnings, passed and skipped, and a link to each published file. A Fix button applies a safe fix; How to fix opens the explanation. Go to dashboard and Open settings close the wizard. If publishing fails, Try again appears and your answers are kept.
Running it again
Open the dashboard and choose Run setup again. The first step then says "Setup is already finished. Walking through it again changes only what you touch."
Found a mistake or something missing? Write to [email protected].