How is your website ranking on ChatGPT?
AEO for Comet: Turn logged in pages and receipts into answer ranking surfaces
Make account pages, receipts, and help articles machine readable so Comet can rank them and route users to one click actions. Ship this playbook now and track AIA as your new north star.

Vicky
Sep 19, 2025
Why this matters now
Consumer distribution in September 2025 is pushing answer first experiences into checkout and account contexts. Your job is to make logged in surfaces answer ready so Comet can read, rank, and route users straight to the next best action.
North star and core principle
North star: Win the in browser answer by exposing machine readable facts and one click actions for the top intents across the post purchase lifecycle.
Core principle: If a human can answer in 5 seconds, structure the page so an AI can answer in 50 milliseconds. That means explicit fields, explicit intents, explicit links.
Priority intents to support
- Subscription status: plan, price, renewal date, trial end, payment method
- Change actions: upgrade, downgrade, pause, add seat, add feature
- Cancellation and refunds: eligibility, fee, prorate, deadline, how to submit
- Ownership proof: order number, serial, warranty window, coverage terms
- Help center answers: short resolution, required prerequisites, deep link to act
Data model for answerable pages
Expose a compact fact block that repeats across web app, emails, PDFs, and help articles.
- Fields: plan_name, plan_tier, plan_price, billing_period, renewal_date_iso, trial_end_iso, seats_total, seats_used, last_invoice_id, last_payment_status, currency, user_id_hash, account_id_hash
- Action fields: next_best_action, next_best_deadline_iso, cancellation_eligibility, refund_eligibility, upgrade_options[], support_case_link
- Link fields: manage_plan_url, upgrade_url, cancel_url, pause_url, add_seat_url, add_feature_url, refund_request_url, receipt_pdf_url
Markup to implement this week
JSON LD using schema.org types
- Use Organization or Person for the account owner context, hasOfferCatalog with Offer items, and potentialAction entries for UpgradeAction, CancelAction, SubscribeAction, ReturnAction, and PayAction. See the schema.org Offer specification and the schema.org potentialAction property.
Example skeleton:
{
"@context": "https://schema.org",
"@type": "Organization",
"name": "<account display name>",
"hasOfferCatalog": {
"@type": "OfferCatalog",
"itemListElement": [
{
"@type": "Offer",
"name": "<plan name>",
"price": "<plan price>",
"priceCurrency": "<currency>",
"validFrom": "<trial_end_iso>",
"validThrough": "<renewal_date_iso>"
}
]
},
"potentialAction": [
{
"@type": "UpdateAction",
"name": "Upgrade plan",
"startTime": "<now_iso>",
"target": {
"@type": "EntryPoint",
"urlTemplate": "<upgrade deep link>"
}
},
{
"@type": "CancelAction",
"name": "Cancel subscription",
"endTime": "<deadline_iso>",
"target": { "@type": "EntryPoint", "urlTemplate": "<cancel deep link>" }
}
]
}
Microdata fallback: simple meta tags
Place key facts as meta tags when JSON LD is not available.
<meta name="subscription.plan" content="Pro">
<meta name="subscription.renewal_date_iso" content="2025-10-15">
<meta name="subscription.manage_plan_url" content="<account manage deep link>">
HTTP header hints for non DOM crawlers
- X Answer Facts: base64 of a compact JSON with the fields listed above
- Link headers with rel=potential-action for upgrade, cancel, and refund targets
Deep link conventions for logged in actions
- Use stable, human readable intent parameters:
?intent=cancel&reason=too_expensive
,?intent=upgrade&target=Business&seats=10
- Include a short lived token that expires under 5 minutes and is scoped to a single action
- Always render a confirm screen with the parsed intent and one clear primary button
Help center patterns that rank in answers
- Write a 60 to 120 word top answer that resolves the task without scrolling
- Follow with a numbered checklist of 3 to 6 steps
- Include an Action box that repeats the deep link and required conditions
- Add structured fields at the top of the article:
- intent: cancel_subscription
- eligibility_window_days: 30
- refund_policy: prorated first cycle only
Receipts, emails, and PDFs that AIs can parse
Emails
- Add an application ld+json block mirroring subscription facts and links
- Keep the first 160 characters a plain language summary with plan and renewal date
PDFs
- Embed XMP metadata with the same fields
- Place a machine readable table on page 1 with labeled cells for plan, amount, renewal_date_iso, and manage_plan_url
Answer initiated actions KPI
Definition: A user completes a subscription or post purchase action that originated from an AI answer click or suggestion.
Event properties to capture:
- source_channel=ai_browser, browser_product_name=Comet, answer_id, model_name, answer_rank_position
- intent=cancel upgrade refund change_plan add_seat
- action_latency_ms from answer click to confirmation
- outcome=completed abandoned escalated
Baseline targets:
- Detection rate over 90 percent of AI originated sessions within 14 days
- Completion rate uplift of 15 percent for the top 3 intents versus your web baseline
Ranking signals to optimize for Comet like agents
- Deterministic facts exposed above the fold and in markup
- Clear binary eligibility rules stated as boolean conditions
- One primary action per intent with a clean confirm screen
- Fast load under 1 second for the action page
- Consistent intent vocabulary across app, emails, PDFs, and help center
Security, privacy, and compliance
- Scope tokens to the exact intent and account, single use only
- Respect geo specific cancellation and refund rules with jurisdiction tags
- Log and rate limit sensitive intents like refunds to prevent abuse
- Provide undo or a grace period where required
QA checklist
- Can an anonymous crawler resolve plan, renewal date, and the cancel URL within one fetch
- Does the confirm screen echo the parsed intent in plain language
- Are all deep links resilient to missing auth and redirect to the exact action after login
- Do emails and PDFs include identical fields and values
- Do help articles expose intent, eligibility, and a working deep link
30 60 90 rollout
30 days
- Mark up subscription overview, receipt pages, and the top 10 help articles
- Ship cancel and upgrade deep links with confirm screens and one time tokens
- Start Answer initiated actions tracking in analytics and your warehouse
60 days
- Extend markup to refunds, warranties, and seats management
- Add structured metadata to email templates and PDF receipts
- Launch answer sourced CX macros for escalations
90 days
- Optimize copy for answerability scores and remove friction from top intents
- Publish an action directory sitemap listing every intent deep link with eligibility
- Report AIA as a tier 1 KPI in the growth dashboard
What good looks like
- A user asks how to cancel, the answer shows renewal date, eligibility, and a cancel button
- The click opens a confirm screen that auto selects the right account and reason
- The event logs source_channel=ai_browser and intent=cancel and completes within 30 seconds
- Your dashboard shows AIA volume, completion rate, and revenue impact by intent
Further reading on AEO
- Explore the Chrome as Answer playbook in Chrome as Answer Engine guide
- See how Gemini in Chrome AEO changes growth in Gemini in Chrome AEO
- Level up fundamentals with the Answer Engine Optimization playbook
Summary
Answer engines inside browsers reward structure and clarity. Make your logged in surfaces machine readable, expose intent specific deep links, and measure Answer initiated actions as a first class metric. This turns subscriptions, receipts, and help content into durable answer ranking surfaces.