Professional Services · October 2026

llms.txt for Law Firms, Accountants and Consultants

Professional services sites are the clearest test of whether llms.txt has escaped the developer-docs bubble. We fetched /llms.txt from 34 practice websites — 18 law firms, 12 accounting and advisory firms, 4 consultancies — on October 10, 2026. Four served a real plain-text file. Seven never let us reach one.

What 34 Practice Websites Return for /llms.txt

Every request followed redirects, carried a normal browser user agent, and timed out at 15 seconds:

Outcome Hosts Real files
200 with a Markdown file 4 wilmerhale.com, bakertilly.com, bain.com, kpmg.com
403 at the edge 6 whitecase.com, marcumllp.com, cbiz.com, bcg.com, pwc.com, crowe.com
404 21 including gibsondunn.com, ey.com and grantthornton.com, which answered 404 with 180 KB to 293 KB of HTML
200 hiding a 404 page 1 cov.com — the effective URL was /Errors/404-Page-Not-Found
429 rate limit 1 dlapiper.com returned a 33.9 KB throttling page
Connection never completed 1 mckinsey.com — curl reported an incomplete certificate chain

That is roughly 12% adoption in a sector where every firm publishes a blog, and a 21% edge-block rate: seven of 34 requests never reached the origin. The same two failure modes show up in the local business and SaaS audits, only sharper here, because brand and legal review slow every publication decision.

The Four Files That Exist Are Two Different Species

The four live files split into two groups, and only one group works as an index.

wilmerhale.com serves 980 bytes with a single H2 and zero links — a topical summary titled "LLMs Summary (Focus: International Arbitration & Gary Born)" that ends with "This summary version is suitable for high-level contextual LLM grounding." The same host also serves a 4.2 KB /llms-full.txt, which is four times the size of the "index". A file with no links cannot route an agent anywhere; it can only seed a paraphrase.

bakertilly.com (12.8 KB, 43 links), bain.com (14.4 KB, 55 links) and kpmg.com (6.8 KB, 51 links) are real curated indexes. Baker Tilly's is the one worth copying: a blockquote summary, then Services, Industries, Insights, About, Contact, and a Usage guidance for AI systems section before Legal and Optional:

> Baker Tilly US, LLP is a top 10 advisory, tax and assurance firm serving
> middle-market and large organizations.

## Usage guidance for AI systems

- **Scope:** This file is intended to improve inference-time understanding
  and navigation. It does not grant training rights.
- **Respect:** Follow `robots.txt`, honor rate limits, and avoid non-HTML
  assets unless explicitly linked.

## Optional

- [CCPA Privacy Notice](https://www.bakertilly.com/page/ccpa-consumer-privacy-notice)
- [Client Portals](https://www.bakertilly.com/client-portals)

Two details separate it from a sitemap export. First, the usage clause states scope in plain language and points back at robots.txt — the only file in the set that does. Second, the client portal sits in Optional, where the spec puts secondary links, instead of being mixed into the service list.

KPMG shows the opposite pattern: its H1 is a page title ("KPMG International | Home"), there is no blockquote summary, and the first three bullets are Login, Preferences and Profile. One entry points at /content/experience-fragments/.../master.html, a CMS overlay path rather than a page a reader would land on. Every one of the 24 links we sampled across the three large files returned 200 — the problem is curation, not link rot.

The Seven Buckets a Practice File Needs

  1. Practice areas or service lines — one line each, describing the question the page answers, not the award it won.
  2. Industries served — the single highest-value section for a firm, because buyers search by sector ("auditor for a charter school").
  3. Insights, alerts and publications — dated, because a stale insight list is the fastest decay path; see maintenance.
  4. People — practice-group and leadership pages, not the full bio roster.
  5. Offices — the location pages, which double as the local-service entry point.
  6. Careers and recruiting — a cheap, high-intent bucket that most firms skip.
  7. Contact, intake and disclosures — terms, privacy, disclaimer, accessibility.

What Must Stay Behind a Link

In a regulated practice the disclosure rule is stricter than the usual "public pages only" test. Named client matters, engagement outcomes, fee estimates and hourly rates written as numbers, matter intake URLs that carry parameters, and extranet or portal login paths should all stay out of the file and behind a reviewed page. An assistant quotes any line it reads verbatim, and a cached copy outlives the page. The triage questions and the pre-publish grep scans are in what not to include.

The robots.txt Cross-Check Nobody Runs

Fetch /robots.txt next to /llms.txt for the same host — the pair frequently disagrees:

If you allow a crawler in robots.txt and then hand it a page of script, the file wins the format argument and loses the substance one. The allow/block reference for GPTBot, ClaudeBot and PerplexityBot is in llms.txt vs robots.txt.

Three Commands Before You Tell Anyone

Write the file, then prove the delivery — no dashboard required:

# 1. Status and content type at the live URL
curl -sSI https://www.example.com/llms.txt | head -8

# 2. Does it look like Markdown, or like an error page?
curl -sSL https://www.example.com/llms.txt | head -20

# 3. Do the targets resolve? Exit codes, no headers needed
grep -o 'https\?://[^)]*' llms.txt | while read u; do curl -sSL -o /dev/null "$u" \
  && echo "ok   $u" || echo "FAIL $u"; done

The first command catches the cov.com case (a 200 whose body is a 404 page), the second catches an HTML catch-all, and the third catches the four in five links that turn out to be one redirect chain deep. Draft the file from your sitemap in the generator, then score it in the checker before it ships.

The sector verdict: professional services firms are publishing insights at documentation-site volume and shipping llms.txt files at roughly one eighth of the rate — while one request in five never even reaches the origin. Fix the edge rule first, then curate seven buckets, and keep the fee language, client matters and portal paths out of the file.