More in Product analytics
- Autocapture and the AI event inbox
- Build a funnel that explains drop-off
- Identify users across web, app and mini-programs
- What is autocapture, and how does it work?
- How do I review and accept events in the inbox?
- What are unplanned events, and how do I manage them?
- When should I use a funnel instead of a goal or path?
- How do I build a funnel?
- How do I read where a funnel drops off?
- What is identified mode, and should I turn it on?
- How do I call login to identify a user?
- How is one person merged across devices?
- How does identity work on apps and mini-programs?
- How do I track clicks on outbound links?
- How do I track file downloads?
- How do I track form submissions?
- How do I track custom events?
- How do I track button clicks?
- How do I create a heatmap?
- How do I track scroll depth?
- How do I track ecommerce purchases and revenue?
- How do I set up goals and track conversions?
- How do I query my data with SQL?
- How do I create a custom metric?
- How do I connect AI agents with MCP?
- How do I ask the AI assistant about my data?
- How do I create user segments?
- How do I run an RFM analysis?
- How do I record and watch session replays?
- How do I analyze user paths?
- How do I build a retention report?
- How do I analyze how an event is distributed?
- How do I create a tracking plan?
- How do I view a user’s profile and activity?
- How do I read the lifecycle report (new, returning, resurrecting, dormant)?
- How do I compare attribution models for a conversion?
- All guides in this category
Still have a question?
Could not find it? A person reads every message, usually within a few hours on business days.
Chat with usShort answer
Call tapcub.group(type, id, traits) after tapcub.login(). Everyone on that id is gathered into one account under All-platform analytics › Users › Accounts, with members, 30-day activity and a 0–100 health score: 40 points active members, 30 active days, 30 recency.
Short answer
Call tapcub.group(type, id, traits) after the user signs in, for example tapcub.group('company', 'acme', { name: 'Acme' }). TapCub then gathers everyone on that id into one account under All-platform analytics › Users › Accounts, with members, 30-day activity and a health score from 0 to 100.
1. Identify the user first
Accounts only hold identified people. Call tapcub.login() before tapcub.group(); a call before sign-in does not create a member, and anonymous visitors never become members. See identify users.
2. Attach the account
tapcub.login(userId, { plan: 'pro' }, { type: 'login' });
tapcub.group('company', 'acme', { name: 'Acme' });
- The first argument is the type (
company,team,store…), the second the id. Events carrytype:id. - Later events in that session stay on the account.
- One person can belong to several accounts.
- When only your backend knows the organization, send the same account field on server-side events.
- Web, App and mini program share one account when they send the same type and id.
3. Read the accounts list
The top cards show account count, accounts active in 30 days, members and account types. Sort by Last active, Members or Health; the type filter lists types that have already appeared. Open a row for 30-day activity, top events, hierarchy, members and traits.
| Health part | Points | Rule |
|---|---|---|
| Active members | 40 | Share of members active in the last 30 days |
| Active days | 30 | Share of the last 30 days with activity |
| Recency | 30 / 15 / 0 | Last seen within 7 days / within 30 days / earlier |
Sample: an account where 6 of 10 members were active (24 points), with activity on 15 of 30 days (15 points), last seen yesterday (30 points), scores 69.
Health stays blank when the account has no last-seen time. More on the idea in customer health score.
4. Hierarchy and traits
In the drawer you can edit traits (stored as JSON) and set a parent account, such as a store under a region or a team under a company. Owners, admins and analysts can edit traits and the parent.
5. Funnels and retention by account
Switch the identity in a funnel or retention analysis from person to account when the question is about the organization: "did the company finish onboarding?" rather than "did this person?". See build a funnel.
Common problems
| Symptom | Cause | Fix |
|---|---|---|
| Accounts list is empty | Nothing has called group() or sent an account on a server event | Pageviews alone do not create accounts; add the call |
| Account has no members | group() ran before sign-in | Call login() first |
| Health is blank | No last-seen time yet | Wait for activity on the account |
Did this answer your question?
We use your answers to fix and expand this page.
Couldn’t send. Please try again in a minute.
Thanks for the feedback. We’ll use it to improve this page.You’ve already sent feedback on this page. Thanks.