Knowledge base

Everything PerchLens does, explained.

Searchable. Linkable. Always up to date. If a question isn't answered here, ping the chat bubble — we'll add the answer.

01 · Setup & installation

Setup & installation

Get tracking up and running in under a minute.

One line of HTML. Works on every page, every framework.

PerchLens ships as a single async script tag, about 4 KB gzipped. Paste it once into the <head> of your site and data starts flowing within seconds.

<script defer src="https://perchlens.com/p.js" data-site="YOUR_TRACKING_ID"></script>

Replace YOUR_TRACKING_IDwith the ID shown on your site's settings page. The script is async, never blocks rendering, and works without any further configuration.

Need framework-specific instructions? See Next.js, WordPress, Google Tag Manager, or any of the other guides under /docs.

Confirm pageviews are landing before you walk away.

After installing the script, visit your site once and then open the Realtime tab in PerchLens. If you see your own visit appear within 5–10 seconds, the install is working.

If nothing shows up after a minute:

  • Hard-refresh your browser to bypass any cached HTML.
  • Open DevTools → Network → filter by p.js. The script should return 200 OK.
  • Check the data-site value matches the tracking ID exactly (no spaces, no quotes around it in the attribute).
  • Disable your ad blocker — privacy-respecting trackers like PerchLens are still occasionally caught by overzealous blocklists.

Track multiple sites from one dashboard.

Click Add Website on the Sites page (top-right) or from the sidebar. The onboarding wizard walks through entering the URL, getting your tracking script, and verifying the first pageview.

Each site gets its own tracking ID, dashboard, goals, audits, and integrations — they're fully isolated. Switch between them from the site picker in the sidebar.

Plan limits apply per account, not per site. See plan limits for the breakdown.

Crawl your site weekly or monthly, hands-off.

Pro and Studio sites can opt into scheduled site audits that run in the background. Open the SEO or GEO page, scroll to the Site Audit panel, and toggle Scheduled audits.

Choose weekly (every Sunday at 03:00 UTC) or monthly (1st of each month at 03:00 UTC). Results appear in your audit history with an auto badge so you can tell them apart from manual runs.

02 · Analytics & insights

Analytics & insights

Understand who&apos;s visiting and what they&apos;re doing.

Visitors, sessions, pageviews — what each metric actually means.

The main dashboard shows four headline metrics for the selected date range:

Unique visitors
Distinct people who visited your site in the period. We deduplicate using a privacy-safe daily salt — the same person visiting at 9am and 11pm counts once.
Sessions
Visit sessions. A new session starts after 30 minutes of inactivity or when a visitor returns the next day.
Pageviews
Total page loads. Includes refreshes and re-visits within a session.
Bounce rate
Percentage of single-page sessions. Lower is better, but context matters — a quick-answer blog page has high bounce rate by design.

See who&apos;s on your site right now.

The Realtime tab shows visitors active in the last 5 minutes, updated every 15 seconds. You see their country, source (Direct, Google, ChatGPT, etc.), and the page they're currently on.

Use Realtime to verify a launch, watch a campaign in flight, or confirm tracking immediately after install.

Where your traffic actually comes from.

The Sources page breaks traffic into channels: Direct, Search, Social, Referral, Campaign. PerchLens automatically detects the channel from the referrer header and any UTM parameters.

Add UTM tags to outbound links to track campaigns:

https://yoursite.com/?utm_source=newsletter&utm_medium=email&utm_campaign=launch

All five UTM parameters (source, medium, campaign, term, content) are captured and shown in the Sources breakdown.

Which pages perform — and which don&apos;t.

The Pages page lists every URL with views, unique visitors, exit rate, and average load time. Sort by any column to find the slowest pages, your highest-traffic posts, or the URLs visitors leave from most often.

Each row is clickable — drill into a single page to see referrers, conversions, and time-on-page trends specific to it.

Where visitors click — without recording sessions.

Privacy-safe heatmaps show aggregate click density per page. No session replays, no individual user tracking, no PII — just a density map you can overlay on your design.

Heatmaps are sampled — the first 1,000 clicks per page per month are recorded. This keeps the script fast and the storage cost zero.

Rage-click detection (rapid repeated clicks in the same area) highlights frustration points automatically. They appear as warning markers on the heatmap.

Side-by-side metrics across multiple sites.

On the Sites page, select 2–5 sites with the checkbox column and click Compare. You get a unified view of visitor counts, top pages, top sources, and conversion rates across all selected sites.

Useful for agencies managing client portfolios or for tracking how related properties perform against each other.

Where your visitors are actually from.

Country, region, and city data are derived from IP-to-geo lookup on the server side. The IP address itself is never stored — only the resolved location.

The interactive world map on the dashboard color-codes countries by visitor density. Hover for exact counts, click to drill down to city level.

03 · AI features

AI features

Tools built for the era beyond Google.

See visitors from ChatGPT, Claude, Perplexity, Gemini, Copilot, and Phind.

When someone clicks a link in an AI chat tool, their browser sends a Referer header pointing back to that tool. PerchLens detects six engines automatically — no extra setup required:

  • ChatGPT
  • Claude
  • Perplexity
  • Gemini
  • Copilot
  • Phind

AI traffic is shown alongside Direct/Search/Social on the Sources page, plus broken out separately on the dedicated AI page so you can compare engines and watch the trend over time.

AI-generated suggestions to grow your AI visibility.

Generative Engine Optimization (GEO) is the new SEO. The GEO tab analyzes your content against the patterns AI engines reward and generates a prioritized list of suggestions.

Each recommendation comes with a confidence score, the affected URL, and a one-line rationale you can act on immediately. Run recommendations weekly to keep your content competitive as engines evolve.

Type a plain-English question, get a specific answer.

Press ⌘K from anywhere in the dashboard to open the Ask AI command palette. Type a question like:

  • "What was my most visited page last week?"
  • "How much traffic did I get from ChatGPT in October?"
  • "Which post had the highest conversion rate?"

Ask AI runs on DeepSeek and only sees aggregate metrics — never your raw visitor data. Answers come back in 1–3 seconds with the specific numbers and a link to the relevant dashboard view.

See which AI crawlers are reading your content.

Distinct from human visitors, AI bots crawl your pages to feed their training data and answer engines. PerchLens detects 20+ crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, etc.) from the User-Agent header.

The AI Bots panel on the AI page shows which engines are visiting, how often, and which pages they prioritize. Use this to verify your content is being indexed for AI answers.

Test whether your domain shows up in AI answers.

Open the public tool at /tools/ai-citation-checker. Enter your domain and a list of queries — the tool fires the queries to ChatGPT, Claude, and Perplexity and reports whether each engine cited you in its answer.

Batch mode supports up to 50 queries at once, perfect for auditing an entire keyword cluster.

Tell AI engines exactly what to index — and what to skip.

llms.txt is the emerging standard for instructing AI crawlers (similar to robots.txt for search). The generator at /tools/llms-txt builds a file from your sitemap with the right structure and curated content sections.

Upload it to https://yoursite.com/llms.txt and AI engines that respect the standard will use it as a curated index.

04 · Conversions & goals

Conversions & goals

Track what success looks like, not just traffic.

Pageview, click, or custom event — three goal types cover every funnel.

Open Settings → Goals → Add Goal. Choose the goal type:

Page visit
Fires when a visitor reaches a specific URL. Great for tracking signups, thank-you pages, and downloads.
Click
Fires when a visitor clicks an element matching a CSS selector. Great for outbound links and CTAs.
Custom event
Fired from your own JS code via perchlens.event(name). Great for app-specific events like "onboarding completed".

New goals start tracking immediately and are backfilled where possible (page visits get the past 30 days, custom events start from the moment you create them).

PerchLens suggests goals from your real traffic.

On the Goals page you'll see a list of suggested goals based on patterns in your real visitor behavior — high-traffic pages that look like conversion endpoints (signup, thank-you, checkout complete) are surfaced automatically.

Click Add as goal to start tracking with one click. Suggestions refresh weekly as your traffic patterns evolve.

See drop-off between steps.

Once you have 2+ goals, the Conversions page builds funnel views showing how many visitors made it from one step to the next. Each step shows the count, the conversion rate from the previous step, and the drop-off from the start.

Click any drop-off step to see which sources or pages produced the most lost visitors — that's usually where the highest-impact UX fix lives.

05 · Reports & alerts

Reports & alerts

Get the numbers that matter pushed to where you already are.

Daily or weekly summaries straight to your inbox.

Settings → Reports → toggle Email reports and choose daily, weekly, or both. Reports include the headline metrics, top pages, top sources, and any anomalies detected.

Daily reports send at 09:00 in your account timezone. Weekly reports send Monday at 09:00 and cover the previous Mon–Sun.

Pipe alerts into your team channels.

Add a Slack or Discord incoming webhook URL in Settings → Webhooks. Choose which events to forward: anomaly alerts, uptime status changes, weekly summaries, conversion milestones.

Messages are formatted natively for each platform — block kit for Slack, embeds for Discord — and include the relevant link back to the dashboard view.

Get notified when something unusual happens.

PerchLens watches your traffic for statistically significant spikes or dips compared to your usual baseline. When detected, an anomaly banner appears at the top of your dashboard with the likely cause (e.g. "ChatGPT traffic 4× normal").

If you have webhooks configured, anomalies push to Slack/Discord within 60 seconds of detection.

5-minute checks with alerts on status changes.

Each tracked site is automatically monitored every 5 minutes from multiple regions. Status (up/down/degraded) shows on the dashboard header.

When a check fails 2 consecutive times you get an email alert (and webhook notification if configured). When the site recovers, another alert confirms it.

Year-in-review email every December.

Each December, accounts with at least 60 days of data receive an Analytics Wrapped email — a Spotify-Wrapped-style summary of their year. Top pages, top sources, biggest day, growth metrics, AI traffic share, and a few personality stats.

Opt out from Settings → Reports if you'd rather skip it.

06 · Site audits & SEO

Site audits & SEO

Crawl your site for SEO and AI-readiness gaps.

One-click crawl of every page on your site.

From the SEO or GEO page, click Run audit in the Site Audit panel. The crawler discovers pages from your sitemap and internal links, then checks each one for SEO health, tracking coverage, schema markup, and content quality signals.

Audits typically take 30–90 seconds depending on site size. Pro sites can crawl up to 500 pages per audit; Free sites are capped at 25.

Insights ranked by impact and priority.

Audit results group findings into three sections:

Critical issues
Block search engines or AI crawlers from indexing your content. Fix these first.
Warnings
Won't block indexing but hurt rankings or AI visibility (missing meta descriptions, slow pages, broken internal links).
Opportunities
Wins available if you invest the work — schema you could add, topics you're missing, content gaps vs competitors.

Each finding is exportable to JSON or CSV from the report header.

Show off your real traffic on your site.

From Settings → Embeds, copy the badge snippet and paste it anywhere on your site. The badge shows live visitor count, page views, or AI traffic share — pick the variant that fits.

Badges are SVG-based, theme-aware (light/dark), and lazy-load. See /docs/badges for all variants and customization options.

07 · Integrations

Integrations

Connect PerchLens with the tools you already use.

Pull search keyword data into your dashboard.

Settings → Integrations → Connect Google Search Console. The OAuth flow asks for read-only access to your verified properties — credentials are encrypted and stored server-side.

Once connected, the SEO page shows your top keywords, click-through rates, and impression trends alongside PerchLens visitor data — the only place where Google search data and AI traffic data live in the same view.

Cross-reference with your existing GA setup.

Settings → Integrations → enter your GA4 Measurement ID (the G-XXXXXXXXXX string). PerchLens stores it for cross-reference but does not poll the GA4 API or sync data — the field is informational, used for showing GA links in your reports and for future GA4 import features.

Pull your data into anything.

Every metric you see in the dashboard is available via the JSON API. Generate an API key from Settings → API, then call:

curl -H "Authorization: Bearer YOUR_API_KEY" \
  https://perchlens.com/api/v1/sites/SITE_ID/stats?period=7d

Full reference, examples, and a curl playground at /docs/api. Rate limits: 60 req/min for Free, 600 req/min for Pro.

Query your analytics from inside Claude Desktop.

PerchLens exposes a Model Context Protocol server so Claude Desktop can read your analytics directly. Add the configuration from /docs/mcpto your Claude Desktop config and ask Claude things like "Summarize last week's top sources for site X."

The MCP server uses your API key for auth and respects the same rate limits.

Check stats from your terminal.

Install once with npx:

npx perchlens stats --site=SITE_ID --period=7d

Configure your default site and API key with npx perchlens config. Useful for cron jobs, CI checks, and quick spot-checks without opening the browser.

08 · Privacy & compliance

Privacy & compliance

Built so you never need a cookie banner.

How we deduplicate visitors without tracking them.

PerchLens uses a daily-rotating, hash-based fingerprint to deduplicate unique visitors within a 24-hour window. The fingerprint is derived from IP + User-Agent + a daily salt that rotates at midnight UTC — making it impossible to track a person across days.

Because no personal data is stored or transmitted, no consent banner is required under GDPR, ePrivacy, CCPA, or PIPEDA. The tracking script doesn't set any cookies.

Why PerchLens is exempt from consent requirements.

GDPR applies to processing of personal data (Article 4(1)). The data PerchLens collects — page paths, referrers, country/city (resolved server-side from IP), screen size, browser — is not tied to any individual identifier and rotates daily. EU regulators (ICO, CNIL) have explicitly cleared this category of analytics from cookie consent requirements.

For full compliance documentation, see /privacy.

How long we keep what.

Aggregate stats (visitors, pageviews, sources, etc.) are kept indefinitely while your account is active. Per-pageview event data is kept for 60 days, then aggregated and the raw events purged.

Delete your account from Settings → Account → Delete and all associated data is removed within 7 days.

What counts as a real visitor and what doesn&apos;t.

PerchLens auto-filters known bots (search crawlers, monitoring services, security scanners, etc.) from visitor metrics so your numbers reflect actual humans. AI bots (GPTBot, ClaudeBot, etc.) are tracked separately on the AI Bots panel.

If you spot bot traffic that's slipping through, send the User-Agent string to support and we'll add it to the filter list.

09 · Account & plans

Account & plans

Plan limits, upgrades, billing, and team access.

What each tier includes.

All plans are per-account, not per-site:

Free
Up to 3 sites, 10K monthly pageviews, 30-day data retention, basic features. No credit card required.
Pro ($9/mo)
Unlimited sites, 1M monthly pageviews, full data retention, site audits, scheduled audits, GEO recommendations, webhooks, API access.
Studio ($29/mo)
Everything in Pro plus 10M monthly pageviews, 5 team members, priority support.

Pricing details and feature matrix at perchlens.com/#pricing.

Change plans whenever; pro-rated billing.

Settings → Billing → Change plan. Upgrades take effect immediately and are pro-rated. Downgrades take effect at the end of your current billing period.

If you exceed your plan's pageview limit, tracking continues but new pageviews aren't recorded until the next billing cycle (or you upgrade). You'll get a warning email at 80% usage.

Invite collaborators (Studio plan).

Studio accounts can invite up to 5 team members from Settings → Team. Each member gets their own login and can be assigned the Owner, Editor, or Viewer role per site.

Free and Pro accounts are single-user. Sharing read-only dashboard access is available on all plans via public dashboard links (Settings → Sharing).

Self-service cancellation, no questions asked.

Settings → Billing → Cancel subscription. Your account stays active until the end of the billing period, then downgrades to Free. All historical data is preserved — you can re-subscribe anytime without losing analytics history.

Refund within 14 days of upgrade — see /refund.

Frequently asked questions

The questions we get most often, answered briefly.

How is PerchLens different from Google Analytics?
Three differences. (1) No cookies, no consent banner — you can install us and walk away. (2) AI traffic detection built-in — we show ChatGPT, Claude, and Perplexity referrals alongside Google. (3) The dashboard actually answers questions instead of forcing you to learn it. GA4 is free and powerful but built for enterprise; we're built for indie makers and small teams.
How is PerchLens different from Plausible/Fathom/Simple Analytics?
Same privacy-first stance, but we add AI traffic tracking, GEO recommendations, on-demand site audits, and an MCP server out of the box — features none of the privacy-first competitors offer.
Will the script slow down my site?
No. The tracker is about 4 KB gzipped, loads asynchronously (defer), and doesn't block rendering. It runs after the page has painted. Real-world impact on Web Vitals is unmeasurable in most tests.
Can I track multiple sites?
Yes. Free accounts get 3 sites; Pro and Studio get unlimited. Each site has its own tracking ID and dashboard, and you can compare them side-by-side from the Sites page.
Do I need a cookie consent banner?
No. PerchLens stores no personal data, sets no cookies, and uses a daily-rotating hash for visitor deduplication that makes cross-day tracking impossible. EU regulators (ICO, CNIL) have explicitly cleared this category of analytics from cookie consent requirements.
What happens if I exceed my plan&apos;s pageview limit?
Tracking continues but new pageviews aren't recorded until the next billing cycle (or you upgrade). You'll get a warning email at 80% usage so it's never a surprise. Historical data is never deleted regardless of plan.
Does PerchLens work with my framework?
Yes — it's a single async script tag, so it works with React, Vue, Svelte, Astro, Next.js, Remix, WordPress, Shopify, Wix, Webflow, Squarespace, plain HTML, and anything else that lets you add a script to the head. Framework-specific install guides at /docs.
Can I export my data?
Yes. Every page in the dashboard has an export button (top-right) for CSV/JSON download. The full REST API is also available — see REST API. Your data is yours.
Is there a free trial?
The Free plan is the trial — no credit card required, includes 3 sites and 10K pageviews/month indefinitely. Upgrade when you outgrow it.
How do I get help if something&apos;s broken?
The chat bubble in the bottom-right opens our team chat — fastest response. For non-urgent questions, email support@perchlens.com. We typically reply within a few hours during business days.

Didn't find what you needed?

The chat bubble in the bottom-right reaches our team directly — we'll answer here and add the answer to the knowledge base for the next person.