Amplitude
Automatically track funnels, conversions, subscriptions, and payments into Amplitude.
How It Works
Connect Amplitude
Go to Settings → Integrations in Zellify dashboard
Enter your Amplitude API Key
Select Server Zone (US or EU)
Optionally enable Session Replay (sample rate 0-100%)
Event Tracking
Zellify automatically streams funnel, payment, subscription, and authentication events to Amplitude
Events include metadata like funnel ID, campaign ID, session ID, and user email
Analysis in Amplitude
Events appear in real time
Build dashboards, funnels, and retention reports
Setup Process
Connect Your Amplitude Account
Go to Settings → Integrations
Click Connect next to Amplitude
Enter your Amplitude API Key
Choose Server Zone (US or EU)
API Key Validation
Zellify validates by sending a test event
Confirms connectivity and permissions
Optional: Enable Session Replay
Toggle Session Replay in settings
Set Sample Rate (0-100%)
Optional: Enable Answer Text for Multiple Choice
Go to Settings → Advanced
Enable "Include answer text in webhooks" toggle
When enabled,
zellify_user_answerevents will include human-readable answer text for multiple choice questions
Save & Start Tracking
Events from all funnels automatically sent to Amplitude
Features
Funnel Tracking - Track funnel progression, view presentations, completions, conversions
Session Replay - Capture replay sessions (optional)
Payment Tracking - Monitor successful, failed, pending, processing payments
Subscription Tracking - Track activations, cancellations, trial starts, status updates
User Identity - Emails synced as
user_idFlexible Metadata - All events include tracking IDs, funnel/campaign names, and contextual properties
Cookie Consent Support - Events queued when consent pending, sent when allowed, blocked when declined
Events Sent to Amplitude
Funnel Events
zellify_funnel_started
zellify_funnel_startedTriggered when: User lands on first page of funnel
Properties:
zellify_page_view
zellify_page_viewTriggered when: User enters or completes a funnel page
States:
presented- Page is displayed to userconverted- User completed the page and moved forward
Properties:
Note: There are two types of converted events:
EXPLICIT - Sent when frontend explicitly fires view complete event
AUTOMATIC - Sent as fallback when user enters next page (only if explicit not sent)
zellify_funnel_completed
zellify_funnel_completedTriggered when: User completes entire funnel (reaches last page)
Properties:
User Events
zellify_user_email_collected
zellify_user_email_collectedTriggered when: User submits email during registration
Properties:
zellify_user_answer
zellify_user_answerTriggered when: User completes a page with form fields
Sent: One event per answer (sent when page is completed)
Properties:
Answer Value Formats:
Text/Email/Phone: String value
Number/Slider: Numeric value
Single Choice: Answer ID (with optional
zellify_answer_text)Multiple Choice: Array of answer IDs (with optional
zellify_answer_textas comma-separated)Date: ISO date string
Boolean/Checkbox: true/false
Deduplication:
Events are cached for 1 hour per session+field combination
Duplicate answers within the hour are automatically skipped
Prevents duplicate events if user goes back and resubmits
How to use in Amplitude:
Search for event:
zellify_user_answerFilter by
zellify_question_textto analyze specific questionsSegment by
zellify_answer_valueto group users by responsesCreate cohorts based on answer patterns (e.g., users who answered "Daily" for training frequency)
Use
zellify_answer_textfor readable multiple choice analysis (when enabled)
Payment Events
All payment events include these common properties:
zellify_payment_successful— Triggered when payment is completed successfullyzellify_payment_failed— Triggered when payment fails or is declinedzellify_payment_processing— Triggered when payment is being processedzellify_payment_pending— Triggered when payment is pending
Note: Payment events are deduplicated using in-memory cache (5-minute window) to prevent duplicates from webhook retries.
Subscription Events
All subscription events include these common properties:
zellify_start_trial— Customer starts a trial subscriptionzellify_subscribe— Customer subscribes (non-trial)zellify_subscription_activated— Subscription becomes activezellify_subscription_trial_started— Trial period beginszellify_subscription_canceled— Subscription is canceledzellify_subscription_past_due— Subscription payment is past duezellify_subscription_paused— Subscription is pausedzellify_subscription_unpaid— Subscription is unpaidzellify_subscription_updated— Subscription details are updated
Common Event Properties
Base Properties (included in most events)
zellify_funnel: Formatted asfunnel_{funnelId}(legacy format, still included)zellify_funnel_id: Numeric funnel IDzellify_funnel_name: Human-readable funnel namezellify_campaign_id: Tracking link/campaign IDzellify_campaign_name: Human-readable campaign namezellify_abtest_id: A/B test experiment ID (if applicable)
Identity Properties
device_id: Tracking session ID (anonymous identifier)user_id: User email address (when authenticated)
Context Properties
zellify_slug: Page slug identifierzellify_view_cid: Unique view component IDzellify_view_name: Human-readable page namezellify_country: User's country code (ISO 2-letter)url: Current page URL
Cookie Consent & GDPR Compliance
Zellify respects user cookie consent preferences:
Pending: Events are queued in memory until user decides
Allowed: All queued events are flushed to Amplitude
Declined: Events are blocked, queue is cleared
This ensures compliance with GDPR and other privacy regulations.
Error Handling
Invalid API keys detected during validation
Network errors trigger automatic retries (up to 3 attempts)
Failed Amplitude calls are non-blocking—funnel flows continue
Duplicate prevention via in-memory caching for critical events
Best Practices
Segmentation & Analysis
Use Amplitude cohorts to segment by funnel, subscription status, or conversion events
Create conversion funnels from
zellify_funnel_started→zellify_page_view(converted) →zellify_payment_successfulAnalyze drop-off rates between funnel pages
Segment users by
zellify_user_answerresponses for behavioral analysis
Performance & Cost
Enable Session Replay sampling thoughtfully (5-10%) to avoid excessive data usage
Events are automatically deduplicated to reduce unnecessary volume
Answer events are sent only when pages are completed (not on every field change)
Data Quality
Ensure correct region (US/EU) for data compliance
Test integration with Amplitude's test mode first
Use
zellify_campaign_nameandzellify_funnel_namefor easier dashboard filteringEnable answer text toggle only if you need human-readable multiple choice values
Campaign Tracking
Set up UTM parameters on your funnel links to populate campaign data
Use
zellify_campaign_idto track performance by traffic sourceLeverage
zellify_abtest_idfor A/B test analysisTrack full conversion path from campaign to payment
Troubleshooting
Events not appearing in Amplitude
Check API key is valid in Settings → Integrations
Verify correct Server Zone (US vs EU)
Check browser console for cookie consent status
Ensure Amplitude integration is marked as "Active"
Duplicate events
Payment events have 5-minute deduplication
Answer events have 1-hour deduplication per field
Converted page events have 1-hour deduplication per view
If duplicates persist, check for multiple Amplitude integrations
Missing properties
Ensure tracking link is properly configured for campaign tracking
Check that funnel has UTM parameters in the URL
Verify user has completed authentication for
user_idto appearEnable "Include answer text" toggle for
zellify_answer_textproperty
Migration Notes
Deprecated Events
zellify_user_answers(plural) — REMOVED due to property explosion issueUse
zellify_user_answer(singular) insteadEach answer is now sent as individual event
Better for long-term scalability and Amplitude property limits
Last updated