ShonyLabs
DocsPricingChangelog
Log inGet started

Getting started

IntroductionQuickstart

Tracking

Tracking snippetCustom goalsIdentify usersExclusions

Privacy

GDPR & cookieless tracking

Revenue

Transactions APIPayment connectors

Server & bots

Bots & server-side tracking

Collaboration

Team & access

Live map

Public live map

Integrations

Google Search Console

No-code platforms

WordPressGoogle Tag ManagerWebflowWixSquarespaceFramerGhostOther platforms

Reference

API reference

Identify users

Replace a generated visitor name with a real account, so the dashboard shows who's actually visiting.

Log in to jump straight to your site's Settings → API to generate a key.

From the browser

Call this right after a visitor logs in on your own site:

JavaScript
window.shonylabs('identify', {
  user_id: 'u_123',
  name: 'Ada Lovelace',
  image: 'https://example.com/avatar.jpg',
  gender: 'female',
  plan: 'pro'
});

Calling identify before the tracking script has loaded? Queue it with a small stub in <head>first, so early calls aren't lost:

HTML
<script>
  window.shonylabs = window.shonylabs || function() {
    (window.shonylabs.q = window.shonylabs.q || []).push(arguments);
  };
</script>

From your own server

Use the /v1/identifyAPI when you only know who a visitor is on your backend — e.g. right after a signup webhook. It's authenticated with your site's API key, not the public site ID:

cURL
curl -X POST https://api.shonylabs.com/v1/identify \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"user_id": "u_123", "name": "Ada Lovelace"}'

Site ID vs. API key

The site IDis public — it's embedded in your tracking snippet and safe to expose in client-side HTML. The API key is a secret that can write identity and transaction data for your site, so it should only ever be used from your own server, never in browser code.

Reserved fields and limits

user_id is required; name, image, and genderare optional and override the visitor's display in the dashboard. Identifying the same user_id from multiple devices or browsers merges them into a single visitor in the dashboard. Up to 10 additional custom properties are allowed, with lowercase key names and markup-stripped values.

ShonyLabs Analytics

Privacy-friendly web analytics that shows which channels actually drive revenue.

© 2026 ShonyLabs. All rights reserved.

Product

  • Log in
  • Sign up
  • Pricing
  • Changelog
  • Documentation
  • API reference

Guides

  • Quickstart
  • Tracking snippet
  • Goals
  • Transactions
  • Identify visitors
  • Cookieless tracking

Legal

  • Terms of service
  • Privacy policy
  • Data processing agreement