Skip to content

Web SDK - Tracking Events

FunnelMob.shared.trackEvent('level_complete');
import { FunnelMobRevenue } from '@funnelmob/sdk';
const revenue = FunnelMobRevenue.usd(29.99);
FunnelMob.shared.trackEvent('purchase', revenue);
// Other currencies
const eur = FunnelMobRevenue.eur(19.99);
const gbp = FunnelMobRevenue.gbp(14.99);
const jpy = new FunnelMobRevenue(2000, 'JPY');
import { FunnelMobEventParameters } from '@funnelmob/sdk';
// Fluent builder pattern
const params = new FunnelMobEventParameters()
.set('item_id', 'sku_123')
.set('quantity', 2)
.set('price', 29.99)
.set('is_gift', false);
FunnelMob.shared.trackEvent('add_to_cart', params);
// Or create from an object
const params = FunnelMobEventParameters.fromObject({
item_id: 'sku_123',
quantity: 2,
price: 29.99,
});
const revenue = FunnelMobRevenue.usd(99.00);
const params = new FunnelMobEventParameters()
.set('plan', 'annual')
.set('trial_days', 7);
FunnelMob.shared.trackEvent('subscribe', revenue, params);
import { StandardEvents } from '@funnelmob/sdk';
FunnelMob.shared.trackEvent(StandardEvents.REGISTRATION);
FunnelMob.shared.trackEvent(StandardEvents.LOGIN);
FunnelMob.shared.trackEvent(StandardEvents.PURCHASE);
FunnelMob.shared.trackEvent(StandardEvents.SUBSCRIBE);
FunnelMob.shared.trackEvent(StandardEvents.TUTORIAL_COMPLETE);
FunnelMob.shared.trackEvent(StandardEvents.LEVEL_COMPLETE);
FunnelMob.shared.trackEvent(StandardEvents.ADD_TO_CART);
FunnelMob.shared.trackEvent(StandardEvents.CHECKOUT);
EventConstantValue
RegistrationStandardEvents.REGISTRATIONfm_registration
LoginStandardEvents.LOGINfm_login
PurchaseStandardEvents.PURCHASEfm_purchase
SubscribeStandardEvents.SUBSCRIBEfm_subscribe
Tutorial CompleteStandardEvents.TUTORIAL_COMPLETEfm_tutorial_complete
Level CompleteStandardEvents.LEVEL_COMPLETEfm_level_complete
Add to CartStandardEvents.ADD_TO_CARTfm_add_to_cart
CheckoutStandardEvents.CHECKOUTfm_checkout
  • Must not be empty
  • Maximum 100 characters
  • Must match pattern: ^[a-zA-Z][a-zA-Z0-9_]*$
// Valid
FunnelMob.shared.trackEvent('purchase'); // OK
FunnelMob.shared.trackEvent('level_2_complete'); // OK
// Invalid (logged as errors, not thrown)
FunnelMob.shared.trackEvent('2nd_level'); // Starts with number
FunnelMob.shared.trackEvent('my-event'); // Contains hyphen
FunnelMob.shared.trackEvent(''); // Empty
  • Must be a 3-letter ISO 4217 code
  • Automatically converted to uppercase
new FunnelMobRevenue(29.99, 'USD'); // OK
new FunnelMobRevenue(29.99, 'usd'); // Converted to 'USD'
// Invalid
new FunnelMobRevenue(29.99, 'US'); // Too short
new FunnelMobRevenue(29.99, 'USDD'); // Too long