Skip to main content

Events & Conversions

Track and analyze in-app events from your mobile SDK to understand user behavior after they click your links.

Overview

The Events dashboard shows in-app events sent by your mobile SDK via trackEvent() and trackRevenue(). This gives you visibility into what users do after they install your app through a LinkForty link:

  • Event volume - Total events, unique event types, and daily counts
  • Revenue tracking - Aggregate revenue from trackRevenue() calls
  • Top events - Most frequent event types at a glance
  • Event timeline - Events over time as an area chart
  • Event feed - Paginated table with event names, properties, and attributed links
  • CSV export - Download raw event data for external analysis
Cloud Only

The Events dashboard is available on Pro and Unlimited plans. Free tier users see an upgrade prompt. Paid plans include real-time auto-refresh — the dashboard polls for new events every 30 seconds so you see data as it arrives.

How Events Flow

  1. Your mobile app calls LinkForty.trackEvent() or LinkForty.trackRevenue()
  2. The SDK sends the event to POST /api/sdk/v1/event with the install ID
  3. The event is stored in the in_app_events table with its name, properties, and timestamp
  4. The Events dashboard queries this data scoped to your organization

Events are linked to your organization through the install attribution chain: each event has an installId, which maps to a link click, which belongs to your organization.

Dashboard Layout

Stat Cards

Four summary metrics across the top:

MetricDescription
Total EventsAll events tracked in the selected time range
Unique EventsNumber of distinct event names
Events TodayEvents received since midnight (UTC)
RevenueSum of revenue from trackRevenue() calls

Time Range Filter

Filter all data by time period: 7 days, 30 days, 90 days, or 1 year. Changing the time range updates stat cards, charts, and the event table.

Event Name Filter

Filter by a specific event type (e.g., only show purchase events). The dropdown is populated from your actual event data.

Charts

  • Events Over Time (left, 2/3 width) - Area chart showing daily event counts
  • Top Events (right, 1/3 width) - Horizontal bar chart of the 10 most frequent event types

Event Feed Table

A paginated table showing individual events:

ColumnDescription
Event NameThe event type (e.g., purchase, signup)
PropertiesKey-value badges showing the event's custom data
LinkThe short code of the attributed link, or "Organic"
TimestampRelative time (e.g., "2m ago", "Yesterday")

Tracking Events

Custom Events

Track any named event with optional properties:

import LinkForty from '@linkforty/mobile-sdk-react-native';

// Track a purchase
LinkForty.trackEvent('purchase', {
productId: 'sku-123',
category: 'electronics',
value: 49.99,
});

// Track a signup
LinkForty.trackEvent('signup', { method: 'google' });

// Track a screen view
LinkForty.trackEvent('screen_view', { screen: 'product_detail' });

Revenue Events

Use trackRevenue() for monetary events. This method ensures a consistent format across all SDKs so the dashboard can aggregate revenue:

// Track a $29.99 USD purchase
LinkForty.trackRevenue(29.99, 'USD', {
productId: 'sku-123',
orderId: 'order-456',
});

Revenue events are stored with:

  • Event name: revenue
  • Event data: { revenue: 29.99, currency: "USD", ...properties }

The Revenue stat card on the dashboard sums the revenue field from all events named revenue in the selected time range.

Event Naming Conventions

Use consistent, lowercase event names for clean analytics:

ConventionExampleAvoid
snake_caseadd_to_cartAddToCart, add-to-cart
Descriptivepurchase_completedevent1, pc
Namespacedonboarding_step_3step3

Exporting Event Data

Click Export CSV in the toolbar to download raw events. The export respects your current filters (time range and event name).

You can also export programmatically via the API:

curl "https://api.linkforty.com/api/analytics/events/export?days=30&format=csv" \
-H "Authorization: Bearer $LINKFORTY_API_KEY"

See the Event Analytics API Reference for all export options.

API Access

All dashboard data is available via the API for building custom reports or integrations:

EndpointDescription
GET /api/analytics/events/overviewStat cards and top events
GET /api/analytics/events/timelineDaily event counts
GET /api/analytics/events/listPaginated event feed
GET /api/analytics/events/namesDistinct event names with counts
GET /api/analytics/events/exportCSV/JSON export

See the full Event Analytics API Reference.

Best Practices

  1. Track meaningful events - Focus on events that represent user value (purchases, signups, content views) rather than low-level interactions
  2. Include useful properties - Add context like product IDs, categories, or amounts to make your data actionable
  3. Use trackRevenue() for money - Don't track revenue as a regular event; use the dedicated method so the dashboard can aggregate it
  4. Keep event names consistent - Standardize on snake_case and use the same name across platforms
  5. Don't over-track - Sending hundreds of events per session adds noise. Track 5-15 key events per user journey

Limitations

  • Events from organic installs (no link attribution) are not shown in the dashboard for v1. Only events from installs attributed to a LinkForty link appear.
  • The Revenue stat assumes all SDKs use the standard trackRevenue() convention. Manually tracked revenue events with different field names won't be aggregated.