Frequently Asked Questions

Tracking AI Traffic & AEO on Vercel

Why can't Google Analytics see most of my AI traffic?

Google Analytics relies on client-side JavaScript, which AI crawlers like ChatGPT-User, ClaudeBot, and PerplexityBot do not execute. As a result, their visits are invisible to GA, even though these bots may be crawling your site extensively. Server-side detection, such as Salespeak's middleware approach, reveals much higher AI traffic than GA reports. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

How does Salespeak's LLM Analytics integration work with Vercel and Next.js?

Salespeak's integration for Vercel and Next.js uses two files: middleware.ts and app/api/ai-proxy/route.ts. The middleware inspects incoming requests for known AI crawler user agents and rewrites them to a proxy route. The Edge Route Handler logs the visit, checks for AI-optimized content, and serves it if available. This setup requires no infrastructure changes and deploys with your code. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

What are the steps to set up Salespeak's AEO tracking on Vercel?

Setup involves four steps: 1) Get the files (clone the Salespeak Next.js boilerplate or copy middleware.ts and app/api/ai-proxy/route.ts into your project), 2) Configure your Salespeak organization ID in middleware.ts, 3) Deploy to Vercel, and 4) Test with an AI user agent string. Removal is as simple as deleting the two files and redeploying. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

How long does it take to implement Salespeak's AEO tracking on Vercel?

The entire setup process can be completed in under five minutes if you're familiar with Next.js and Vercel deployments. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

What technical requirements are needed for the Vercel integration?

You need a Next.js project deployed on Vercel and your Salespeak organization ID. No additional infrastructure, API tokens, or environment variables are required. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

How does Salespeak detect AI crawlers?

Salespeak's middleware inspects the User-Agent header on every incoming request and matches it against a list of known AI crawler signatures, such as ChatGPT-User, ClaudeBot, PerplexityBot, and BingPreview. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

What happens if Salespeak does not have optimized content for a page?

If there is no AI-optimized version of a page, Salespeak's proxy route serves the original page to the AI crawler. This ensures your site always works and there is no risk of broken pages for either human or AI visitors. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

Does the Salespeak integration affect site performance for human users?

No, the middleware only activates its rewrite logic for recognized AI user agents. Human visitors experience the site as usual, with no performance impact. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

How does caching work for AI crawlers with Salespeak's integration?

Caching is intentionally disabled for AI crawlers. The route returns Cache-Control: private, no-store, max-age=0 and Vary: User-Agent on every AI response, ensuring crawlers always receive the freshest content. Human visitors continue to use Vercel's normal caching. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

What data does the Salespeak dashboard provide after integration?

The dashboard shows AI crawler breakdowns (which models visit and how often), page-level crawl data, crawl frequency patterns, and optimization status for each page. This data is not available in standard analytics tools. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

How does Salespeak's Vercel integration compare to Cloudflare or WordPress setups?

Salespeak's Vercel integration is simpler, requiring only two files within your Next.js project and no external infrastructure or API tokens. In contrast, Cloudflare requires API token creation and Worker deployment, and WordPress needs a plugin plus server configuration. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

What is the fallback behavior if the proxy route fails?

If anything goes wrong with the proxy, the route returns your original page. There is no failure mode where visitors (human or AI) see a broken page. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

How can I test if the integration is working?

Send a request with an AI user agent string (e.g., ChatGPT-User) and confirm it routes through /api/ai-proxy. Check the response headers for Vary: User-Agent. If present, the integration is live. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

How do I remove Salespeak's AEO tracking from my Vercel project?

Simply delete the two integration files (middleware.ts and app/api/ai-proxy/route.ts) and redeploy. Traffic returns to normal immediately. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

What are the benefits of tracking AI crawlers on my site?

Tracking AI crawlers allows you to see which models visit your site, which pages they access, and how often. This data helps you optimize your content for AI search and understand your site's visibility in AI-generated answers. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

How does Salespeak help with Answer Engine Optimization (AEO)?

Salespeak enables you to detect, track, and optimize for AI crawlers, serving AI-optimized content to bots and providing analytics on AI traffic. This helps improve your site's chances of being cited in AI-generated answers. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

What specific AI crawler data can I unlock with Salespeak?

You can see which AI models visit your site, the frequency of their visits, which URLs they crawl, and which pages are optimized for AI. This level of detail is not available in standard analytics tools. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

How does Salespeak ensure my site is always available to both humans and AI?

The integration only rewrites requests for recognized AI user agents. If no optimized content is available or if the proxy fails, the original page is served. Human visitors are never affected. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

Features & Capabilities

What features does Salespeak offer for AEO tracking and optimization?

Salespeak provides AI crawler detection, real-time analytics on AI visits, the ability to serve AI-optimized content, seamless integration with Next.js and Vercel, and a dashboard for monitoring AI traffic and optimization status. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

Does Salespeak support custom integration or APIs?

Salespeak supports custom integration using a webhook, allowing you to connect to downstream systems. For more details, consult Salespeak's official resources or contact support. (Source: manual)

What security and compliance certifications does Salespeak have?

Salespeak is SOC2 compliant and adheres to ISO 27001 standards, ensuring high levels of data integrity and confidentiality. For more details, visit the Salespeak Trust Center. (Source: https://salespeak.secureframetrust.com/)

What is the difference between AEO and AX?

AEO (Answer Engine Optimization) is a tactic within AX (Agent Experience). AEO focuses on getting cited in AI search results, while AX covers every surface where an agent encounters your company, including direct site visits and embedded assistants. (Source: https://salespeak.ai/blog/agent-experience)

What is Synthetic Persona Tracking for AEO measurement?

Synthetic Persona Tracking uses AI-generated user profiles built from your CRM and analytics to simulate how different buyer segments search for information and what answers AI provides. It removes bias from running your own queries and is the most sophisticated method for enterprise AEO measurement. (Source: https://salespeak.ai/aeo-news/measuring-aeo-metrics)

What is the role of prompt tracking in AEO?

Prompt tracking is useful as a diagnostic tool but should not be used as a substitute for rank tracking or as a stable KPI, since AI systems are not stable enough for long-term key performance indicators based on prompt tracking alone. (Source: https://salespeak.ai/aeo-news/aeo-hype-vs-data-2026)

What AEO metrics can be unlocked by tracking AI crawlers?

Key metrics include coverage (percentage of priority pages fetched by at least one model), depth (number of distinct pages crawled per model), freshness pickup (time from page update to first bot re-fetch), citations (explicit and inferred), and reliability (bot-specific errors and never-fetched lists). (Source: https://salespeak.ai/blog/measure-aeo-with-cloudflare-workers)

Why is standard web analytics insufficient for AEO?

Standard web analytics lacks the per-request, high-cardinality data needed to segment by page, bot, and time. Edge logging, as implemented with Cloudflare Workers or Salespeak's middleware, enables this level of detailed tracking. (Source: https://www.salespeak.ai/blog/measure-aeo-with-cloudflare-workers)

How does Salespeak's approach align with Vercel's philosophy?

Salespeak's integration matches Vercel's "develop, preview, ship" philosophy by requiring only two files, one config value, and a simple deployment. No external infrastructure or services are needed. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

Use Cases & Benefits

Who can benefit from Salespeak's AEO tracking on Vercel?

Any organization running a Next.js site on Vercel that wants to understand and optimize its visibility in AI search results can benefit. This includes SaaS companies, B2B marketers, and technical teams focused on AI-driven traffic. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

What problems does Salespeak solve for technical teams?

Salespeak solves the problem of invisible AI traffic, provides actionable analytics on AI crawlers, and enables teams to optimize content for AI-generated answers without impacting human users or requiring complex infrastructure changes. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

How does Salespeak help improve inbound conversion rates?

By making your site visible and citable to AI crawlers, Salespeak increases the likelihood that your content is referenced in AI-generated answers, potentially driving more qualified inbound traffic and conversions. (Source: https://salespeak.ai/aeo-news/track-aeo-vercel)

What are the measurable results of using Salespeak?

Salespeak has demonstrated a 40% average increase in close rates, a 17% average increase in ticket price, and customer success stories such as Cardinal HVAC increasing weekly ridealongs from 6-7 to 25-30, and Pella Windows achieving a +5 point close ratio increase over 5 months. (Source: https://salespeak.ai/profiles/rilla/)

Can you share a customer success story related to Salespeak?

RepSpark was able to set up Salespeak in less than 30 minutes and saw live results the same day, highlighting the platform's ease of use and rapid deployment. (Source: https://salespeak.ai/success-stories/repspark-how-ai-changed-the-playbook-and-how-intelligent-conversations-brought-it-back)

How does Salespeak's AEO tracking support enterprise needs?

Salespeak's tracking provides detailed analytics, supports SOC2 and ISO 27001 compliance, and offers rapid, code-based deployment suitable for enterprise security and operational requirements. (Source: https://salespeak.secureframetrust.com/)

Where can I find more news and updates about Salespeak and AEO?

You can find news and updates on Salespeak's AEO News page. (Source: https://salespeak.ai/aeo-news)

Is AEO considered a V2 of SEO?

You can explore whether AEO is considered a V2 of SEO by reading our article discussing if AEO is a V2 of SEO. (Source: https://salespeak.ai/aeo-news/new-aeo-playbook-2026)

How to Track and Optimize AEO With Vercel: Salespeak LLM Analytics Setup

A red, orange and blue "S" - Salespeak Images
Omer Gotlieb Cofounder and CEO - Salespeak Images
Salespeak Team
7 min read
March 9, 2026

70% of sites show under 2% AI traffic in their analytics. That number is wrong. It's not that AI crawlers aren't visiting. It's that Google Analytics can't see them. GA runs client-side JavaScript. AI crawlers don't execute JavaScript. Every visit from ChatGPT-User, ClaudeBot, or PerplexityBot hits your server, grabs your content, and leaves without a trace in your dashboard.

Server-side detection tells a different story. When you actually inspect incoming requests at the middleware layer, AI traffic is significantly higher than what any client-side tool reports. Cloudflare Radar pegged 66% of all internet traffic as bots in 2025. AI crawling specifically grew 15x that same year. Your site isn't exempt from that trend — you just can't see it yet.

If you're running Next.js on Vercel, Salespeak's LLM Analytics integration fixes this with two files. No CDN API tokens. No Lambda functions. No Lua modules. Just Next.js middleware and an Edge Route Handler — patterns you already know.

Why middleware is the right layer for AI detection

Next.js middleware runs on every incoming request before your page renders. It sits at the edge, inspects the request, and can rewrite, redirect, or modify it, all before your React components even load. That's exactly where AI crawler detection belongs.

Client-side approaches fail because AI crawlers don't run your JavaScript. Server-side approaches work but often require infrastructure changes: custom server configs, reverse proxies, or Lambda@Edge functions. Next.js middleware is neither. It's application-level edge logic that deploys with your code. No infrastructure to manage. No separate service to monitor.

Salespeak's integration uses this position to do three things automatically:

  • Detect AI agents by user agent: ChatGPT-User, BingPreview, PerplexityBot, Claude-User, Claude-Web, ClaudeBot, and others, identified at the edge in milliseconds
  • Track every AI visit to your Salespeak dashboard: which models visited, which pages, how often, and when
  • Inject AI-optimized content when available: AI visitors get AEO-tuned pages; if no optimized version exists, they get your original page as-is. Your site always loads normally.

Human visitors never see a difference. Your site looks and performs exactly the same. The middleware only activates its rewrite logic for recognized AI user agents.

Two files. That's the entire integration.

The architecture is minimal by design. Two files power everything:

middleware.ts (project root)

This file inspects the User-Agent header on every incoming request. It maintains a list of known AI crawler signatures — ChatGPT-User, ClaudeBot, PerplexityBot, BingPreview, and others. When a match is found, it rewrites the request to your Salespeak proxy route at /api/ai-proxy. When there's no match, the request passes through untouched.

One config value lives here: your Salespeak organization ID. That's the only thing you need to set.

app/api/ai-proxy/route.ts (Edge route handler)

This route handles the actual work when an AI crawler is detected. It runs on Vercel's Edge runtime, the same infrastructure as Vercel's own edge functions, meaning low latency globally. Here's what it does in sequence:

  1. Logs the AI visit to Salespeak — model name, page URL, timestamp, all pushed to your dashboard
  2. Fetches your original page — the same content your human visitors see
  3. Checks for AI-optimized content — pulls from your Salespeak alternate origin if an optimized version exists for that URL
  4. Injects optimized content when available — if Salespeak has an AEO-tuned version, the crawler receives it. If not, the original page is returned unchanged.

The fallback behavior matters. If your Salespeak account doesn't have optimized content for a given page, or if anything goes wrong with the proxy, the route returns your original page. Your site always works. There's no failure mode where visitors (human or AI) see a broken page.

Caching: intentionally disabled for AI

AI responses are never cached. The route returns Cache-Control: private, no-store, max-age=0 and Vary: User-Agent on every AI response. This ensures crawlers always receive the freshest version of your optimized content. Human visitors continue using Vercel's normal caching — ISR, SSG, whatever you've configured. The integration doesn't touch it.

Setup: four steps, under five minutes

If you've deployed a Next.js app to Vercel before, this will feel familiar. There's nothing new to learn.

Step 1: Get the files

Two options. Clone the Salespeak Next.js boilerplate if you're starting fresh. Or copy the two required files (middleware.ts and app/api/ai-proxy/route.ts) into your existing Next.js project. Both approaches work identically.

Step 2: Configure your org ID

Open middleware.ts. Replace the placeholder organization ID with your Salespeak org ID. That's the only configuration change. One string, one file.

Step 3: Deploy

Commit and push to your deployment branch. Vercel auto-builds. The proxy route uses Edge runtime by default — no additional Vercel configuration, no environment variables to set, no build settings to adjust.

Step 4: Test

Send a request with an AI user agent string (e.g., ChatGPT-User) and confirm it routes through /api/ai-proxy. Check the response headers for Vary: User-Agent. If it's there, the integration is live.

Removal is equally simple. Delete the two files, redeploy. Traffic returns to normal immediately. No orphaned infrastructure, no dangling configs.

Full deployment guide: DEPLOYMENT.md
Support docs: LLM Analytics for Vercel

What you'll see in the dashboard

Once deployed, your Salespeak dashboard starts collecting data that GA physically cannot:

  • AI crawler breakdown: which models visit your site and how often. ChatGPT-User vs. ClaudeBot vs. PerplexityBot, with daily and weekly trends
  • Page-level crawl data: which URLs get the most AI attention, and which are being skipped entirely
  • Crawl frequency patterns: when AI models recrawl your pages, which ties directly to the AEO metrics that actually matter
  • Optimization status: which pages have AEO-optimized content active, and which are still serving standard pages to AI visitors

This data answers questions your current stack can't. Is Perplexity crawling your docs but ignoring your product pages? Did your latest content update trigger a recrawl from GPTBot? How does your AI crawl volume compare week over week? You'll know.

Why this fits the Vercel philosophy

Vercel's whole pitch is "develop, preview, ship." The Salespeak integration matches that energy. Two files to add. One value to configure. Push to deploy. No infrastructure to provision, no separate services to run, no API tokens to manage beyond your org ID.

Compare that to other hosting environments. Cloudflare requires API token creation and Worker deployment. WordPress needs a plugin plus server configuration. Both work well, but they involve steps outside your application code. The Vercel integration lives entirely inside your Next.js project. It deploys with your app, versions with your code, and removes with a git rm.

The middleware pattern isn't something Salespeak invented — it's how Next.js expects you to handle request-level logic. Auth checks, geo-redirects, A/B testing — they all use the same pattern. AI crawler detection is just another entry in that list. If you've written a Next.js middleware before, you already understand how this works.

Tracking is the baseline. Optimization is the upside.

Knowing that ClaudeBot visited your pricing page is useful. Knowing it visited and received a page structured with clear definitions, entity-rich descriptions, and citable statements? That's where AEO compounds.

Publishers who blocked AI crawlers entirely saw a 23% average traffic decline. The opposite approach works better: welcome AI crawlers, give them structured content, and make your pages easy to cite. The Salespeak integration does this automatically when you've configured optimized content for your key pages.

Start with tracking. See which pages AI models actually visit. Then prioritize optimization for those pages first, structured for AI search and built around the kind of definitive statements that get cited in AI-generated answers.

Two files. One config value. A git push. That's the full distance between being blind to AI traffic and controlling what AI models see when they visit your site.

Newsletter

Stay ahead of the AI sales and marketing curve with our exclusive newsletter directly in your inbox. All insights, no fluff.
Thanks! We're excited to talk more about B2B GTM and AI!
Oops! Something went wrong while submitting the form.

Share this Post