# AI Visibility Audit Checklist for B2B Software

> The self-check behind the Shortlist Audit: entity consistency, extraction-ready pages, source-map presence, crawler access, measurement. One line per item.

Canonical: https://webpossible.com/tools/ai-visibility-audit-checklist/
Source: https://webpossible.com/tools/ai-visibility-audit-checklist/
Format: Markdown version for AI agents. The canonical HTML page is at the source URL above.
Last verified: 2026-09-03

---

Tool

# AI Visibility Audit Checklist for B2B Software

This is the checklist we run at the start of a Shortlist Audit, minus the data. Five sections, fifty-odd lines, each one a yes or no you can answer from your own site, your listings and a browser. Work through it in order. The first two sections are where most property-ops vendors fail, and they are the cheapest to fix. Print the page or keep it open; there is no PDF and no gate.

## 1\. Entity consistency

Compare these fields across your website, G2, Capterra, LinkedIn, Crunchbase, and every PMS marketplace listing you hold (AppFolio Stack, the Buildium Marketplace, and the Yardi, Entrata and Rent Manager partner directories). One spelling, one description and one set of facts across all of them.

1.  The company name is spelled and capitalized identically in all of them.
2.  If the product name differs from the company name, one of them is the entity and leads everywhere.
3.  The one-sentence category description uses the same nouns in all of them.
4.  The G2 and Capterra category is the one a property manager would browse, not a broad “property management software” bucket.
5.  Founding year, headquarters city and headcount range agree on LinkedIn, Crunchbase and the About page.
6.  The website URL is identical in every profile, down to https, www and the trailing slash.
7.  Every profile links to the site, and the site’s Organization markup lists every profile in `sameAs`.
8.  Pricing shown on review platforms matches the pricing page or is absent; nothing stale.
9.  The integrations listed on the site match the PMS marketplace listings, in both directions.
10.  Logo and screenshots are current; a five-year-old screenshot reads as a dormant company.
11.  Each review platform has at least one review in the last 90 days and a double-digit count.
12.  If you renamed or were acquired, the old name appears as “formerly” on every profile, and the new name is on all of them.
13.  If a Wikipedia or Wikidata entry exists, it agrees with the rest; if none exists, you have not written one yourself.

## 2\. Extraction-ready owned pages

A page is extraction-ready when a machine can lift the fact it needs without inference: the category in the first paragraph, the price as a number, the integration as a named PMS.

1.  The homepage’s first paragraph states category, buyer and portfolio range in one sentence.
2.  A pricing page exists with numbers: per unit per month, monthly minimum, setup fee, or “quoted” where that is the truth.
3.  One integrations page per PMS you support (Yardi, RealPage, Entrata, AppFolio, Buildium, Rent Manager) stating what syncs and in which direction.
4.  Segment pages for the segments you serve (single-family rental, small multifamily, institutional multifamily, student housing, affordable housing) with a door range on each.
5.  An alternatives page and at least one comparison page against the category incumbent, written with real differences rather than a checkmark table.
6.  Case studies carry door counts, the PMS, the metric that moved, and a date.
7.  The About page names founders, year, location and ownership.
8.  FAQ answers are visible text, one paragraph each, and match the FAQPage markup word for word.
9.  Section headings are the questions property managers ask, and the answer is the first sentence beneath each.
10.  Every page has one H1 that names the category, and a meta description.
11.  No key fact lives only in an image, a PDF, or a tab that renders on click.
12.  Organization, SoftwareApplication and Product/Offer markup are present and validate, per the [schema templates](/tools/schema-templates/).
13.  An llms.txt sits at the root and points at the pages above, per the [llms.txt template](/tools/llms-txt-generator/).
14.  Pricing, integrations and comparison pages carry a last-updated date, and it is within the last year.

## 3\. Source-map presence

The Index publishes, per category, the twenty domains and twenty URLs most often cited across its runs. In the one completed ChatGPT run of the September 2026 edition, for maintenance software, reddit.com was the most cited domain. Your job in this section is to find out whether you exist on those pages.

1.  You have pulled the source map for your category, for example the [maintenance software sources](/ai-shortlist-index/maintenance-vendor-network-software/sources/), or the [resident benefits sources](/ai-shortlist-index/resident-benefits-platforms/sources/) or [access control sources](/ai-shortlist-index/multifamily-access-control/sources/).
2.  For each of the top twenty domains, you know whether you are present at all: listed, reviewed, mentioned, or absent.
3.  Where present, the entry is accurate on name, category, pricing and integrations, and dated within the last twelve months.
4.  Review platforms (G2, Capterra, Software Advice, GetApp) are claimed, in the right category, with current reviews.
5.  Reddit and forum threads that get cited mention you, or you have customers who would answer in them in their own words; you have never posted as a customer yourself.
6.  You know which “best software” listicles are cited for your category, whether you are in them, and whether each is pay-to-play, which the Index flags rather than hides.
7.  Trade publications and associations (NARPM, NAA, NMHC) that appear in the map carry a current mention of you.
8.  Your PMS marketplace listings appear in the map, and they are complete.
9.  Your own domain appears in the cited list at all; if you are only reached through third parties, section two is not done.
10.  Competitor comparison pages that mention you are accurate, and you have a comparison page of your own on the same pair.

## 4\. Technical access for AI crawlers

Robots rules and bot mitigation quietly block the crawlers that feed answer engines. The user-agent names below come from the OpenAI, Perplexity, Anthropic and Google crawler documentation; check the current documentation when you edit robots.txt.

1.  robots.txt allows GPTBot, OAI-SearchBot, PerplexityBot, ClaudeBot, Google-Extended and CCBot on the pages in section two.
2.  Your CDN or firewall bot rules do not challenge or block those user agents; the server logs show 200s, not 403s, for them.
3.  Key content is in server-rendered HTML; view-source on the pricing page shows the numbers.
4.  No interstitial, cookie wall or region block hides the main content before consent.
5.  Pages return a real 200, canonicals point at themselves, and nothing in section two carries noindex.
6.  The XML sitemap is current, carries lastmod, and is submitted in Search Console.
7.  Largest Contentful Paint is under 1.8 seconds on the pages in section two; that is the budget this site holds itself to.
8.  `/llms.txt` returns 200 as text/plain or text/markdown, not a redirect to the homepage.
9.  Structured data validates at validator.schema.org with no errors.
10.  One canonical host (www or not) and HTTPS only; the other variants redirect.
11.  Alt text is present and the key facts are not in the images.
12.  Server logs show the crawlers above reaching the pricing, integrations and comparison pages within the last 30 days.

## 5\. Measurement

1.  Your prompt set is written down: at minimum the five in the [checker](/tools/ai-visibility-checker/), ideally the 25 for your category from the [prompt library](/ai-shortlist-index/prompt-library/).
2.  A baseline run exists: every prompt on four engines, three runs on separate days, saved with dates.
3.  Each run is scored on the Index’s metrics: mention rate, position score, consistency, engine spread, cited domains.
4.  Your Index row and your competitors’ rows are bookmarked and checked each edition.
5.  The cited-domains list is maintained, and every new domain is triaged as present, absent, or fix.
6.  The model id or app version is noted per run, because engines change models without notice and a shift in your row may be a model change.
7.  Referral traffic from chatgpt.com, perplexity.ai and gemini.google.com is segmented in analytics.
8.  The demo form asks how the buyer found you, and “asked an AI assistant” is one of the options.
9.  One person owns this, and the next run is on the calendar.

## How the Shortlist Audit differs from the self-check

The checklist is fifty yes-or-no answers you produce by hand. The Shortlist Audit ($3,500, seven days) starts from the Index’s data for your category instead: every run of all 25 prompts across the four engines, three runs each, captured the way the Index captures them: ChatGPT from its app at chatgpt.com, Perplexity and Gemini through their APIs, and Google AI Overviews from a licensed SERP capture. It shows the prompts where you were named and the ones where you were not. It adds your competitors’ rows, the category Source Map with its top twenty domains and URLs, and a targeted crawl of your owned pages covering structured data, comparison and alternatives pages, and entity consistency across G2, Capterra, LinkedIn, Crunchbase and the PMS marketplaces.

What comes back is your position stated plainly, the causes ranked with each finding labeled verified, inferred or hypothesis and linked to its evidence, the top ten cited sources you are absent from, a 90-day fix scoped to a Sprint, and a list of what we will not promise. Paying for it never changes an Index row. The [Audit page](/ai-visibility-audit/) has the scope in full, and the [guide to how answer engines choose sources](/ai-search-optimization/) explains why the sections above are ordered the way they are. The rest of the [free tools](/tools/) cover the fixes you can make yourself.

## Get your row explained — $3,500

Seven days. Twenty-five prompts across four engines. The cause behind your row and a 90-day fix. Ryan replies with an agreement and an invoice; no call required.

 

Leave this empty 

Name 

Work email  Company domain 

Request the Audit Prefer a call? [Contact](/contact/).

Goes to ryan@webpossible.com with this page’s URL attached. Never shared, never sold. See the [privacy policy](/privacy/).

Part of [the tools](/tools/).
