ParseLess
ParseLess serves your WordPress content as clean Markdown to AI crawlers (via User-Agent detection) and on manual ?format=md requests. Same URL, same content, none of the theme chrome, navigation, widgets, or page-builder scaffolding that AI bots and CLI tools don’t need. It also exposes /llms.txt for the emerging AI-indexing standard, so models know where to find your content. Who is this for? 1. Developers using Claude Code, Cursor, Aider, or any CLI that feeds your own site content into an LLM. If you’ve ever piped a blog post into Claude or ChatGPT for analysis, rewriting, or summarization, you’ve watched it burn through tokens parsing nav menus, footer markup, and CSS classes that have nothing to do with your content. A typical WordPress page measured live: ~19,800 tokens of HTML for ~975 tokens of actual content — a 20x reduction just by stripping the theme. Heavy page-builder sites (Elementor, Divi) routinely hit 100x or more. That’s the difference between fitting a handful of pages in a context window and fitting dozens. Just append ?format=md to any post URL and pipe it straight into your tool of choice: curl https://yoursite.com/my-post/?format=md | claude "summarize this" 2. Site owners getting “high resource usage” warnings from their host because AI bots are hammering the site. GPTBot, ClaudeBot, PerplexityBot, Google-Extended, and a dozen others crawl WordPress sites constantly. Each request renders your full theme, runs widget queries, loads page-builder assets, and ships hundreds of KB of HTML per page — most of which the bot discards before extracting the actual text. ParseLess intercepts these crawls and serves a tiny Markdown payload instead. You keep the AEO/SEO benefit of being indexed by AI search, without paying the server cost of rendering your full theme for every bot hit. Typical impact on AI bot traffic (measured on real WordPress pages): 95%+ less bandwidth per crawled page (typically 15–30x smaller; e.g. a 79 KB page → 4 KB. Heavy page-builder sites see 100x+) ~60–80% fewer database queries per request ~60% lower peak PHP memory per request ~50–80% faster Time To First Byte (measured 54% on a content-heavy page, 67% on a short one) On a site with 500 posts crawled monthly by major AI bots, that’s roughly gigabytes → tens of megabytes of monthly bandwidth and a fraction of the cumulative PHP execution time Numbers vary by theme and content. Heavier setups (Elementor, Divi, Avada) see the biggest savings; lightweight themes see less dramatic but still meaningful gains. The conversion is cached as a transient, so repeated bot hits cost almost nothing. How it works AI crawlers are detected by User-Agent and served Markdown automatically — no configuration required. Humans, search engines, and unknown bots receive your normal HTML output. ParseLess never affects what real visitors see. The ?format=md query parameter works on any post URL for manual preview or CLI piping. /llms.txt is published at your site root with a list of available content for AI indexers. Conversion happens once per post and is cached. Subsequent requests serve a single transient read. Features Automatic Markdown for known AI bots (GPTBot, ClaudeBot, PerplexityBot, OAI-SearchBot, CCBot, Google-Extended, Applebot-Extended, Bytespider, Meta-ExternalAgent, cohere-ai, and more) Manual preview and CLI access via ?format=md on any post URL /llms.txt endpoint for AI-indexing standards Respects noindex flags from Yoast SEO, Rank Math, and Genesis Skips private, draft, password-protected, and trashed posts Works with all public post types (configurable) Optional YAML frontmatter (title, URL, author, date, categories, tags, excerpt) Transient-based caching with configurable TTL Settings page at Tools → ParseLess for detection mode, bot list, cache TTL, post types, and llms.txt control Per-post meta box with Markdown preview and copy-to-clipboard Extensible via filters: md4ai_bot_list, md4ai_supported_post_types, md4ai_markdown_output, md4ai_cache_ttl, md4ai_should_serve_markdown Privacy and data collection When logging is enabled (off by default), ParseLess records the following for each Markdown request: Post ID, URL, and request timestamp The full User-Agent header A salted SHA-256 hash of the requester’s IP address (the raw IP is never stored) Matched bot identifier, bytes served, and whether the response came from cache IP hashes cannot be reversed from an email address, so the WordPress privacy exporter/eraser tools will report no personal data on demand. Logs are pruned daily according to the configured retention window (7/30/90/365 days, default 30). Site owners can disable logging or click “Delete all logged requests” at any time from Tools → ParseLess.
Top keywords
- ai9×1.19%
- post9×1.19%
- content8×1.06%
- markdown8×1.06%
- bot7×0.93%
- page6×0.79%
- parseless6×0.79%
- site6×0.79%
- url6×0.79%
- bots5×0.66%
- format5×0.66%
- format md5×0.66%
PufferSights – AI Crawler Insights
PufferSights monitors 100+ known AI crawler and AI agent user agents, hashes IP addresses, groups traffic by bot, provider, crawl purpose, content type, and response status, tracks human referrals from AI surfaces, and can publish a dynamic llms.txt content map for public site content. The dashboard summarizes: HTTP traffic by bot. Crawl purpose. Content type. Response status. AI referrals and crawl-to-refer ratio. Top crawled content. Tracked agent count. Dynamic llms.txt content map. robots.txt audit and policy snippets. The crawler registry is based on current public operator documentation and industry references for OpenAI, Anthropic, Perplexity, Google, Apple, Common Crawl, Meta, ByteDance, Microsoft, Amazon, and related AI crawler operators. The plugin does not contact any external service. All analytics data is stored in your own WordPress database. robots.txt publishing is off by default. The plugin can generate and optionally publish policies for: Monitor only. Block training crawlers. Allow AI search/user-action bots while blocking training crawlers. Block all known AI bots. llms.txt publishing is on by default and can be disabled in the PufferSights settings. The generated /llms.txt file lists selected published public pages and posts in Markdown so AI assistants can find the site’s main public content more easily. Important Notes User-agent detection is not bot verification. User agents can be spoofed. Raw IP addresses are not stored; the plugin stores a salted hash for rough uniqueness. robots.txt is voluntary. Use a WAF, CDN, or server-level controls when technical enforcement is required. Google-Extended and Applebot-Extended are robots.txt control tokens rather than normal request user agents, so they appear in robots.txt audits and policy snippets but usually do not appear in request logs. llms.txt is a content map, not an access-control policy. It does not replace robots.txt and does not force AI systems to use or cite your content. Privacy PufferSights stores local analytics for public, logged-out requests only. It does not track wp-admin pages, logged-in users, AJAX requests, or WP-Cron requests. The plugin stores: Request time and date. Event type, such as AI crawler request or AI referral. HTTP method. Request path without query string. HTTP response status. MIME/content group. Matched crawler or AI referral provider. User-agent string and user-agent hash. Salted one-way hash of the request IP address. Referrer origin only, such as https://chatgpt.com, without referrer path or query string. The plugin does not store raw IP addresses, cookies, browser local storage, or complete referrer URLs. It does not send analytics, telemetry, crawler records, or site data to third-party services. If llms.txt publishing is enabled, the plugin serves a Markdown overview of selected published public posts and pages at /llms.txt. Drafts, private posts, and password-protected posts are not included. Administrators can disable tracking, clear captured events, and configure retention from the PufferSights admin page. The default retention period is 90 days. On uninstall, the plugin removes its custom analytics table, saved options, and scheduled cleanup hook. The plugin also adds suggested disclosure text to WordPress’ Privacy Policy Guide.