GlobalVetLink — Pendo implementation audit
Prepared: March 2026 (Brainforge)
Inputs: Event tracking plan (SSOT) — workbook tab 4. Events & Event Properties and 5. Metrics; Pendo exports — Track Events (track-events-1774535033553.csv), Features (features-list.csv), Pages (page-list.csv).
How to read this document: The tracking plan defines the single source of truth (SSOT) for what should be measured (object–action events, server milestones, and KPIs). This audit compares what Pendo currently captures (three different mechanisms) to that plan, calls out redundancy and noise, and lists violations prioritized for cleanup.
1. Why overlap hurts reporting
Pendo separates Track Events (explicitly sent from the app), Pages (URL/rule-based views), and Features (tagged UI elements / clicks). The same real-world behavior often appears in two or three of these at once.
Consequences for GlobalVetLink:
- Funnels fragment. A “visited CVI list” step might be counted from a Track Event (CVI - Navigated to CVIs list view), a Page (CVI Listview), and multiple Features (e.g. list actions), so no single line item matches the SSOT event Certificate Workflow Started or a clean activation step.
- Dashboards disagree. Page views and Track Event counts measure different things (sessions vs. API fires); summing or comparing them without a documented primary metric double-counts or confuses stakeholders.
- Activation and drop-off are harder. The SSOT ties KPIs to named events (Profile Completed, Payment Added, Certificate Signed, etc.). Today, many of those do not exist as Track Events; proxies are spread across Pages and hundreds of Features, so “where did they drop off?” requires manual reconciliation.
- HubSpot and lifecycle work suffer. Metrics in tab 5. Metrics (e.g. registration-to-first-login, profile completion, payment capture, certificate completion) assume stable event names and a small set of sources. A large, overlapping Pendo surface makes property sync and campaign triggers harder to trust.
Scale of the noise
| Instrument | Count (this export) | Notes |
|---|---|---|
| Track Events | 68 | Many mirror list/show/edit flows also defined as Pages. |
| Pages | 76 | Multiple Pages share identical URL include rules (see §4). |
| Features | 256 | 152 features show 0 clicks and 0 visitors in the export — dead weight in the UI tree. Roughly half of all Features tie to International / IPTP granularity (e.g. per-country/per-airline), which is far below SSOT milestone level. |
2. SSOT events vs Pendo (summary)
The tracking plan defines server and client events such as Account Created, Payment Added, Profile Completed, Session Started, Certificate Workflow Started, step completions (Ownership / Movement / Animals Submitted), Certificate Previewed, Certificate Signed, Clinic Paid, and invoice/payment milestones (Invoice Queued, Invoice Sent, Payment Received).
Coverage assessment
| SSOT event (representative) | In 68 Track Events by name? | Typical Pendo reality today |
|---|---|---|
| Account Created, Clinic Signed Up, Payment Added, Profile Completed, Clinic Paid, Invoice Queued/Sent, Payment Received | No (server-led; not in Track Event list) | May exist only in backend/HubSpot; not visible as Track Events in this export. |
| Session Started / Login | Partial | Home - Home page loaded, NVAP modal events, login Page — ambiguous proxies for “authenticated session.” |
| Certificate Workflow Started | Partial | Many X - new/edit and Navigated to X list view events; overlaps heavily with Pages for same routes. |
| Ownership / Movement / Animals Submitted | No as named | Possible only through Features (e.g. CVI cards) or inferred — not aligned to SSOT naming. |
| Certificate Previewed | Partial | CVI - preview; EIA/VFD show flows partially covered by Pages. |
| Certificate Signed / Vet Signed Certificate | Partial | document - sign - {type} family maps to “signed” but mixes cert types without SSOT-style properties in the name. |
| License Verification Completed | Partial | *smart engine - verification - ** |
Implication: Even if Pages and Features are “rich,” activation and drop-off reporting against the SSOT remains under-specified until server events (or a minimal set of renamed Track Events with properties) match tab 4 and 5.
3. Event audit summary — all 68 Track Events
Legend for vs SSOT: Aligned = clear semantic match to a planned event or KPI input; Proxy = related but wrong granularity or naming; Ops = helpful for support/UX, not in core SSOT funnel; Orphan = no SSOT milestone (navigation/noise relative to plan). Pendo overlap: Page = same journey covered by a tagged Page; Feature = same screen has tagged clicks (often many).
| # | Track Event | Accounts | Visitors | Track Events (vol) | vs SSOT | Overlap (typical) |
|---|---|---|---|---|---|---|
| 1 | Acknowledgement letters - sidemenu navigation | 7 | 7 | 18 | Ops | — |
| 2 | Animals - Navigated to Animals list view | 3678 | 6059 | 88405 | Orphan | Page: HorseSync, Animals List (duplicate Pages, same rules) |
| 3 | Certificates - Navigated to Search your certificates page | 0 | 0 | 0 | Orphan | Page: Certificates, Find Certs (related URLs) |
| 4 | Client Intake - Clicked on Client Intake | 0 | 0 | 0 | Ops | — |
| 5 | Contacts - Navigated to Contacts list view | 2865 | 4436 | 28602 | Orphan | Page: Contacts List |
| 6 | CVI - Navigated to CVIs list view | 4509 | 7248 | 99433 | Proxy (workflow entry) | Page: CVI Listview |
| 7 | CVI - new/edit | 5383 | 9304 | 118961 | Proxy | Pages: Multiple CVI edit Pages (companion/equine/production/general overlap) |
| 8 | CVI - preview | 4825 | 7669 | 56063 | Aligned (preview) | Page: CVI Preview |
| 9 | CVI - show | 4989 | 8269 | 72495 | Proxy | Pages: Several show Pages share same URL rules (duplicate group) |
| 10 | document - archive - quick-draft | 159 | 242 | 1045 | Ops | — |
| 11 | document - batch commit - EHC | 0 | 0 | 0 | Ops | — |
| 12 | document - batch sign - CVI | 112 | 143 | 422 | Proxy | — |
| 13 | document - batch sign - EIA | 1071 | 1574 | 7338 | Proxy | — |
| 14 | document - batch sign - Rabies | 7 | 7 | 20 | Proxy | — |
| 15 | document - batch sign - VFD | 176 | 218 | 459 | Proxy | — |
| 16 | document - commit - EHC | 470 | 615 | 2449 | Ops | — |
| 17 | document - sign - CVI | 4790 | 7421 | 49444 | Aligned (sign) | Page + Features on CVI flows |
| 18 | document - sign - EIA | 3238 | 5391 | 76430 | Aligned (sign) | Pages: EIA edit (duplicate Page group) |
| 19 | document - sign - HHC | 102 | 105 | 148 | Aligned (sign) | Page: HHC signing |
| 20 | document - sign - IHC | 429 | 488 | 882 | Aligned (sign) | Pages: IHC edit (large duplicate group) |
| 21 | document - sign - Rabies | 119 | 132 | 756 | Aligned (sign) | Page: Rabies cert |
| 22 | document - sign - VFD | 833 | 1328 | 5246 | Aligned (sign) | Pages: VFD show / sign |
| 23 | Documents - PDF Downloaded | 6466 | 19950 | 245459 | Ops | High volume; not a SSOT milestone |
| 24 | EECVI - Navigated to EECVIs list view | 812 | 1035 | 5172 | Orphan | Page: EECVI List View |
| 25 | EECVI - new/edit | 608 | 796 | 4075 | Proxy | Pages: EECVI creation / edit |
| 26 | EECVI - show | 507 | 688 | 3301 | Proxy | Page: EECVI Signed |
| 27 | EIA - Navigated to EIAs list view | 3360 | 5801 | 168118 | Orphan | Page: EIA Listview |
| 28 | EIA - new/edit | 3423 | 6095 | 132451 | Proxy | Pages: EIA new/edit (duplicates) |
| 29 | EIA - show | 3463 | 6281 | 135476 | Proxy | — |
| 30 | Emailed certificates - Certificate email sent successfully | 1262 | 1901 | 21895 | Ops | — |
| 31 | Emailed certificates - Failed to send certificate email | 26 | 27 | 51 | Ops | — |
| 32 | Help - Clicked on Help > AnimalRegs.com | 374 | 481 | 1092 | Ops | — |
| 33 | Help - Clicked on Help > Give Feedback | 39 | 41 | 45 | Ops | — |
| 34 | Help - Clicked on Help > Help articles | 523 | 548 | 732 | Ops | — |
| 35 | hhc - duplicate | 14 | 14 | 20 | Naming / duplicate | Pair with HHC - new/edit |
| 36 | HHC - new/edit | 351 | 470 | 1437 | Proxy | Pages: HHC list/travel/signing |
| 37 | Home - Home page loaded | 7913 | 34015 | 507152 | Proxy (session/home) | Page: Dashboard |
| 38 | ihc - duplicate | 73 | 76 | 134 | Naming / duplicate | Pair with IHC - new/edit |
| 39 | IHC - new/edit | 1072 | 1414 | 5598 | Proxy | Pages: IPTP / IHC edit (7+ Page names, same metrics) |
| 40 | Images - Navigated to Images list view | 519 | 558 | 790 | Orphan | Page: Animal Images |
| 41 | NVAP_Modal - confirmed_not_applicable | 8 | 8 | 8 | Ops (accreditation) | Features: NVAP modal buttons |
| 42 | NVAP_Modal - continue_login | 55 | 57 | 68 | Ops | — |
| 43 | NVAP_Modal - show_login | 7912 | 34003 | 308652 | Proxy | Overlaps home/login journey |
| 44 | NVAP_Modal - show_sign | 6967 | 12687 | 665928 | Proxy | — |
| 45 | PTP - Navigated to Hawaii list view | 494 | 591 | 1216 | Orphan | Page: HHC Listview |
| 46 | PTP - Navigated to IHC list view | 2124 | 2732 | 7018 | Orphan | Page: IPTP Listview |
| 47 | PTP - Navigated to Pet TravelPass list view | 0 | 0 | 0 | Orphan | — |
| 48 | PTP - show | 559 | 730 | 2173 | Proxy | Pages: Multiple signed/show |
| 49 | Rabies - Navigated to Rabies certificates list view | 291 | 337 | 1686 | Orphan | Page: Rabies List View |
| 50 | RabiesCertificate - new/edit | 194 | 234 | 1435 | Proxy | Page: Rabies Certificate Page |
| 51 | RabiesCertificate - show | 128 | 156 | 1369 | Proxy | Pages: Rabies Signed + duplicate pair |
| 52 | smart engine - verification - [multiple] | 112 | 143 | 422 | Proxy | — |
| 53 | smart engine - verification - failed | 4766 | 7362 | 47322 | Proxy (verification) | Features: Smart Engine cards |
| 54 | smart engine - verification - passed | 407 | 477 | 1228 | Proxy | — |
| 55 | smart engine - verification - skipped | 485 | 634 | 3343 | Proxy | — |
| 56 | smart engine v2 - toggle - toggleOff | 284 | 337 | 656 | Ops | — |
| 57 | smart engine v2 - toggle - toggleOn | 201 | 216 | 292 | Ops | — |
| 58 | Support - Clicked on Support button | 1249 | 1771 | 4514 | Ops | — |
| 59 | Templates - Navigated to Templates list view | 1451 | 1861 | 4441 | Orphan | Page: Templates Listview |
| 60 | Tooltips - Tooltip triggered | 4080 | 7734 | 30904 | Ops | High noise for analysis |
| 61 | user profile - connect integrations | 38 | 42 | 63 | Proxy (profile) | Page: Profile |
| 62 | UserVoice - Clicked User Voice Feedback button | 127 | 131 | 188 | Ops | — |
| 63 | Vaccines Search - Navigated to Vaccines advanced search page | 0 | 0 | 0 | Orphan | — |
| 64 | VFD - Navigated to VFDs list view | 1018 | 1592 | 8813 | Orphan | Page: VFD List View |
| 65 | VFD - new/edit | 920 | 1553 | 8372 | Proxy | Page: Create New VFD |
| 66 | VFD - show | 984 | 1692 | 12433 | Proxy | Pages: Sign VFD / VFD Download overlap |
| 67 | Void Document - Failed to void document | 4 | 4 | 5 | Ops | — |
| 68 | Void Document - Successfully voided document | 544 | 688 | 1204 | Ops | — |
Counts (Track Events only)
| Category | Count |
|---|---|
| Clear operational (help, tooltips, support, email void, PDF download, etc.) | 15 |
| Navigation / list style (Orphan vs SSOT milestones) | 18 |
| Duplicate / bad naming (explicit duplicate events) | 2 |
| Zero volume (0 accounts, 0 events) | 5 |
| Proxies for SSOT (workflow/sign/preview/modal) | 28 |
4. Redundancy examples (Track Events + Pages + Features)
Use these in working sessions to justify consolidation.
- Animals list: Track Event Animals - Navigated… + Pages HorseSync and Animals List (MVL and GVL) — identical include rules → same page views reported under two names.
- CVI signed: Track CVI - show + Pages EquineCVI Signed Showview, Companion CVI Signed page, Production CVI Showview — same URL pattern (
cvis/*/show) → triple labeling. - EIA edit: Track EIA - new/edit + Pages Canada EIA, EIA Certificate Page, EIA - Preview PDF button — same include rules → triple labeling.
- IHC / IPTP edit: Track IHC - new/edit + four to seven Page names (IHC Edit Signing, International Pet TravelPass Signing Page, Edit, IPTP Certificate Upload, etc.) — same metrics repeated.
- Equine CVI entry: Pages CVI (equine) and CVI - Horse — duplicate rules for
cvis/new?workflow=equine. - Rabies signed: Pages Rabies Signed and Rabies After Signing — duplicate rules for
rabies/*/show. - Features: 152 features with no clicks and no visitors — clutter; many are country/airline dropdown tags on IPTP Travel Page, not meaningful for activation funnels.
5. Violation checklist (prioritized for cleanup)
P0 — Fix first (duplication & false precision)
| # | Issue | Evidence | Recommended action |
|---|---|---|---|
| 1 | Duplicate Pages (same include rules, different names) | 7 groups; worst: IHC edit (4 Pages), CVI show (3), EIA edit (3), IHC signed (3), Animals (2), Equine CVI (2), Rabies signed (2) | Merge into one Page per URL pattern; use Page segments or metadata for workflow variant if needed. |
| 2 | Explicit duplicate Track Events | hhc - duplicate, ihc - duplicate | Remove after confirming parity with HHC - new/edit / IHC - new/edit; fix instrumentation so one event fires. |
| 3 | Navigated Track Events that mirror Pages | 18+ list/nav events align with existing Pages | Choose one primary per funnel step: either retire redundant Track Events or stop using Page views for the same step in dashboards. |
P1 — Naming & taxonomy
| # | Issue | Evidence | Recommended action |
|---|---|---|---|
| 4 | Inconsistent conventions | document - sign - X vs X - new/edit vs *NVAP_Modal - *; mixed casing (hhc vs HHC) | Rename toward Object - Action per SSOT (tab 4); use event properties for cert type (CVI, EIA, …). |
| 5 | SSOT server milestones absent from Track Events | Account Created, Payment Added, Profile Completed, Clinic Paid, invoice/payment events | Implement server-sent Track Events (or equivalent) with properties from the plan; Pendo Pages cannot replace these. |
| 6 | Workflow step events missing | No Ownership Submitted, Movement Submitted, etc. | Add client Track Events at step boundaries or formally adopt specific Features as secondary metrics (document which). |
P2 — Noise reduction & maintenance
| # | Issue | Evidence | Recommended action |
|---|---|---|---|
| 7 | Zero-traffic Features | 152 / 256 with 0 clicks and 0 visitors | Archive or delete after confirming no campaigns depend on them. |
| 8 | Over-granular Features (country/airline/etc.) | Large International/PTP footprint | Replace with one feature + property, or drop if not used in reporting. |
| 9 | High-volume non-milestone events | Tooltips - Tooltip triggered, Documents - PDF Downloaded | Keep only if used in explicit analyses; otherwise exclude from default dashboards to reduce noise. |
| 10 | Zero-volume Track Events | Certificates search, Client Intake, PTP Pet TravelPass list, Vaccines Search, batch commit EHC | Verify firing in app; fix or remove to avoid dead taxonomy. |
6. Recommended next steps (aligned to SSOT)
- Declare a primary instrument per SSOT milestone (Track Event vs Page vs Feature) and document it in the tracking workbook — one row per milestone, not three.
- Backfill server events listed in tab 4 so KPIs in tab 5 (Profile Completion Rate, Payment Capture Rate, Certificate Completion Rate, etc.) have a direct Pendo/HubSpot path.
- Collapse duplicate Pages and remove duplicate Track Events in the same sprint to immediately simplify reporting.
- Prune Features in two passes: (a) zero-traffic, (b) non-milestone granularity (countries/airlines) unless a named report requires them.
End of report.