Visitor Identification: Know Your Best Users by Name

Visitor identification is the practice of associating a known identity — a name, email, or user ID — with an anonymous website visitor. It transforms raw traffic data into a list of real people, revealing exactly who visited your site, what they did, and whether they converted into paying customers.

Most analytics tools treat visitors as interchangeable numbers. You see "1,247 unique visitors this week" and learn nothing about who those visitors actually are. Visitor identification closes that gap by connecting anonymous sessions to real identities the moment a user signs up, logs in, or submits a form.

Why anonymous analytics misses the story

Traditional analytics gives you aggregates. You know that 30% of visitors from organic search viewed your pricing page. You know the average session duration is 2 minutes and 40 seconds. You know your bounce rate is 54%.

What you do not know is which specific people are doing these things.

Consider a SaaS founder trying to understand churn. Their analytics dashboard shows a drop in signups this month. But aggregate data cannot answer the questions that matter:

  • Which visitors came back three times before signing up?
  • Which trial users visited the docs repeatedly but never activated?
  • Which high-value leads from a Product Hunt launch visited the pricing page but bounced?

Without visitor identification, every user is a ghost. You see their footprints but never their face.

The aggregate trap

Averages lie. When you see "average RPV of $1.20 from organic search," that number hides enormous variation. Some visitors are worth $0. Others are worth $500. Knowing the average helps you allocate budget — but knowing the individuals helps you close deals, prevent churn, and build relationships.

Visitor identification does not replace aggregate analytics. It adds a layer of depth that turns statistical trends into actionable intelligence about specific people.

The identify() API: how it works

DataSaaS provides a simple JavaScript API to identify visitors. When a user performs an action that reveals their identity — logging in, signing up, submitting a contact form — you call identify() to attach that identity to their visitor profile.

// After a user logs in or signs up
datasaas.identify({
  email: "jane@example.com",
  name: "Jane Chen",
  plan: "growth",
  company: "Acme Corp"
});

This single call does several things:

  1. Links the anonymous visitor ID (stored in the datasaas_visitor_id cookie) to a known identity
  2. Merges historical sessions — every page view, referrer, and event from before identification gets attached to this person
  3. Stores custom properties (like plan and company) that you can filter and segment by later

The identify call is idempotent. Calling it multiple times with the same email updates the profile rather than creating duplicates. If a visitor clears their cookies and returns, identifying them again merges the new anonymous sessions into their existing profile.

When to call identify()

The best moments to identify a visitor:

  • After signup — the most common trigger. The user just gave you their email.
  • After login — reconnects a returning user to their visitor profile, even if cookies were cleared.
  • After form submission — contact forms, demo requests, newsletter signups. Any moment the user voluntarily shares their identity.
  • From your backend — if you have a server-side integration, you can identify visitors via the API when processing webhooks or events.

You should never call identify() without the user's knowledge. Identification should always follow an explicit action where the user provides their information.

See every visitor by name

DataSaaS identifies visitors and connects them to revenue. Start tracking who your best customers are, starting at $7.99/mo.

Try DataSaaS free

Visitor profiles and journey replay

Once a visitor is identified, DataSaaS builds a rich profile that tells their complete story.

What a visitor profile contains

Each identified visitor profile includes:

  • Identity — name, email, and any custom properties you set via identify()
  • First touch — the original traffic source, landing page, and UTM parameters that first brought this visitor to your site
  • Session history — every visit, with timestamps, pages viewed, referrer, device, browser, and location
  • Revenue data — total lifetime revenue, individual transactions, subscription status (when connected to Stripe or LemonSqueezy)
  • Custom properties — plan tier, company name, role, or any other data you attach

Journey replay

The journey replay feature lets you see a visitor's entire relationship with your product in chronological order:

  1. March 3 — Arrived from Google search for "saas analytics tool." Viewed homepage and pricing page.
  2. March 7 — Returned via direct visit. Read three blog posts about revenue tracking.
  3. March 12 — Clicked a link in your newsletter. Visited the pricing page again. Signed up for a free trial.
  4. March 15 — Logged in twice. Visited the integrations page and the docs.
  5. March 19 — Upgraded to the Growth plan. First payment: $14.99.

This timeline is not hypothetical. It is the kind of data that visitor identification makes visible. Without it, you would see five separate anonymous sessions with no connection between them.

Top visitors list

The top visitors view ranks identified visitors by the metrics that matter:

  • By revenue — who are your highest-paying customers, and how did they find you?
  • By visit frequency — who keeps coming back? These are your most engaged users, even if they have not paid yet.
  • By page depth — who reads the most content? These visitors are in research mode and may be close to a decision.

This view turns your analytics dashboard into something that resembles a lightweight CRM. You see names, not numbers.

Custom properties: segmentation that fits your business

The identify() API accepts arbitrary custom properties. This means you can segment visitors by any dimension that matters to your business.

datasaas.identify({
  email: "alex@startup.io",
  name: "Alex Rivera",
  plan: "starter",
  company_size: "1-10",
  role: "founder",
  signup_source: "product_hunt"
});

Once set, custom properties appear on the visitor profile and can be used to filter your analytics:

  • Show me all visitors where plan is "growth" — what content do they read?
  • Show me all visitors where role is "founder" — which traffic source brings them?
  • Show me all visitors where company_size is "50-200" — what is their average RPV?

Custom properties are flexible by design. You define the keys and values. DataSaaS stores them and makes them filterable. No schema configuration required.

Privacy considerations

Visitor identification involves handling personal data. DataSaaS is designed to make this straightforward and responsible.

Opt-in by design

Visitor identification in DataSaaS is strictly opt-in. The tracking script collects anonymous analytics data by default — page views, referrers, device type, and country. No personal information is collected until you explicitly call identify().

This means the identification step always corresponds to a user action: signing up, logging in, or submitting a form. The user has already provided their information voluntarily. You are simply connecting that information to their anonymous analytics profile.

Data handling

  • Storage — identified visitor data is stored in your Supabase database, protected by Row Level Security. Only you can access your visitors' profiles.
  • No third-party sharing — DataSaaS does not sell, share, or transfer visitor data to any third party. Your data stays in your database.
  • Deletion — you can delete any visitor profile and all associated data at any time. This supports GDPR right-to-erasure requests.
  • Minimal data — the identify() call only stores what you explicitly send. DataSaaS does not scrape additional information from the visitor's browser or enrich profiles with third-party data.

GDPR and compliance

If you operate in the EU or serve EU customers, you should disclose visitor identification in your privacy policy. Since identification requires an explicit user action (signup, login, form submission), it aligns with legitimate interest or consent-based processing — but your privacy policy should describe what data you collect and why.

DataSaaS provides a cookieless tracking mode that works without any cookies at all. In this mode, visitor identification still works — calling identify() creates a profile, but without the persistent cookie, cross-session merging relies on the user logging in again.

Identify your highest-value visitors

Connect anonymous traffic to real people and real revenue. DataSaaS visitor identification starts at $7.99/mo with the Starter plan.

Try DataSaaS free

Use case: SaaS onboarding optimization

Visitor identification transforms how you understand your onboarding funnel.

The problem without identification

Traditional funnel analytics shows you conversion rates between steps: 60% of signups complete step 1, 40% complete step 2, 25% activate. You know where people drop off, but you do not know who drops off or why.

The solution with identification

With visitor identification, you can examine the profiles of users who dropped off at each step:

  • Step 1 dropoffs — Did they visit the docs? Did they come from a traffic source that attracts low-intent visitors? Were they on mobile (where your onboarding might be clunky)?
  • Step 2 dropoffs — Did they visit the pricing page before dropping off? Maybe they hit a paywall they did not expect. Did they visit competitor comparison pages?
  • Activated users — What do successful users have in common? Which traffic sources, landing pages, and behaviors predict activation?

This is not abstract analysis. You are looking at specific people. You can email a user who dropped off at step 2 and ask what went wrong. You can see that users from your "Getting Started" blog post activate at 2x the rate of users from paid ads — and shift your budget accordingly.

Connecting onboarding to revenue

When your payment provider is connected, visitor identification closes the loop entirely. You can answer:

  • Which onboarding path produces the highest Revenue Per Visitor?
  • Do users who activate quickly have higher lifetime value?
  • Which signup source produces users who upgrade from Starter to Growth?

Use case: sales outreach for high-intent visitors

If you sell a higher-ticket product or offer enterprise plans, visitor identification enables targeted sales outreach.

Identifying sales-ready visitors

A visitor who has done the following is likely ready for a conversation:

  • Visited the pricing page 3 or more times
  • Read case studies or comparison pages
  • Signed up for a trial but has not upgraded
  • Has a company_size custom property of "50-200" or higher

With visitor identification, you can build a filtered view of these high-intent visitors and reach out proactively. You know their name, email, company, and exactly which pages they spent time on. Your sales email can reference their specific interests instead of being a generic cold outreach.

Timing your outreach

The journey replay data tells you when to reach out. A visitor who checked the pricing page yesterday is warm. A visitor who last visited three weeks ago is cooling. A visitor who signed up for a trial two days ago and has not logged in since needs an activation nudge, not a sales pitch.

Visitor identification lets you time your outreach based on actual behavior rather than arbitrary drip schedules. Instead of "send sales email 7 days after signup," you can say "send sales email when a trial user has visited the pricing page twice but has not upgraded."

Integration with your workflow

Export identified visitor data to your CRM or use the DataSaaS REST API to pull visitor profiles into your existing sales tools. The goal is not to replace your CRM — it is to enrich it with behavioral data that your CRM cannot capture on its own.

Cross-session and cross-device stitching

One of the most valuable aspects of visitor identification is its ability to connect sessions that would otherwise appear unrelated.

The fragmented visitor problem

Without identification, a visitor who browses your site on their phone during lunch, returns on their laptop at work, and signs up on their tablet at home looks like three separate anonymous visitors. You see three sessions with no connection between them. Your analytics overcounts unique visitors and undercounts engagement depth.

How identification solves it

When the visitor signs up (on any device), calling identify() with their email links that session to their profile. The next time they log in on their laptop, calling identify() again merges the laptop sessions into the same profile. Over time, all devices and sessions converge into a single, comprehensive visitor record.

This matters for understanding the real customer journey. What looked like three short, shallow sessions is actually one deeply engaged prospect who spent a combined 22 minutes across your pricing page, documentation, and case studies before converting. That level of engagement is invisible without identification.

Session stitching in practice

Consider a typical SaaS purchase journey:

  1. Monday, mobile — visitor discovers your product via a Twitter link, reads the landing page for 90 seconds
  2. Tuesday, work laptop — visitor Googles your product name, reads two blog posts and the comparison page
  3. Wednesday, work laptop — visitor returns via direct URL, explores the pricing page and documentation
  4. Thursday, personal laptop — visitor signs up, starts a trial

Without identification, sessions 1 and 4 are attributed to different anonymous visitors. With identification, all four sessions merge into one profile the moment the visitor signs up. You see the complete journey, including the original Twitter referral that started everything — which would otherwise be lost.

Use case: content marketing ROI

Visitor identification helps content marketers understand which articles attract people who actually pay.

Instead of measuring blog performance by pageviews, you can measure it by identified visitors who later converted. If your post on "How to migrate from Plausible" attracts 20 identified visitors who collectively generate $2,400 in revenue, that post has an RPV of $120 — and you should write more content like it.

Compare this to a viral post that generates 10,000 pageviews but zero identified conversions. Traditional analytics says the viral post is your best content. Revenue attribution says otherwise.

Building content-to-revenue feedback loops

With identification, you can build a direct feedback loop between content creation and revenue:

  1. Publish content across your blog, YouTube, or newsletter
  2. Track which identified visitors arrived through each piece of content
  3. Monitor which visitors convert to paying customers over the following weeks
  4. Calculate content RPV — total revenue from identified visitors attributed to each piece of content, divided by total visitors
  5. Create more content that matches the topics, formats, and angles of your highest-RPV pieces

This loop replaces the guesswork of content marketing with a data-driven process. You stop asking "what content should I create?" and start asking "what content produces the highest revenue per visitor?" — a question that visitor identification makes answerable.

Best practices for visitor identification

  1. Identify at every authentication touchpoint — signup, login, and password reset. This ensures returning users are always reconnected to their profile.
  2. Set meaningful custom properties — plan tier, company size, and role are more useful than generic data. Choose properties that will help you segment visitors into actionable groups.
  3. Do not over-identify — only identify visitors who have taken an explicit action. Passive identification (e.g., matching IP addresses to company names) is a different category of tool with different privacy implications.
  4. Combine with revenue attribution — visitor identification is most powerful when paired with payment provider integration. Knowing who visited is good. Knowing who visited and how much they paid is transformative.
  5. Review your top visitors weekly — make it a habit. The top visitors list is the fastest way to spot trends, identify at-risk accounts, and find your best customers.

Getting started

Setting up visitor identification in DataSaaS takes about five minutes:

  1. Add the DataSaaS tracking script to your website (already done if you are tracking traffic)
  2. Add datasaas.identify() calls to your signup, login, and form submission handlers
  3. Optionally connect Stripe or LemonSqueezy to see revenue alongside visitor profiles
  4. Visit the Visitors tab in your dashboard to see identified visitors appear in real time

Plans start at $7.99/mo for the Starter plan, which includes visitor identification, revenue attribution, and all core analytics features. The Growth plan at $14.99/mo adds team access and higher event limits.

DataSaaS is built for SaaS founders who want to understand their users as individuals — not just as traffic statistics.


Related reading: