Kitemetrics Destination

Kitemetrics provides keyword level attribution for Apple Search Ads and associates them with In-App Purchases. Kitemetrics allows you to leverage automation to easily manage and optimize Apple Search Ads campaigns and bids.

This destination is maintained by Kitemetrics. For any issues with the destination, please reach out to their team.

NOTE: The Kitemetrics Destination is currently in beta, which means that they are still actively developing the destination. This doc was last updated on April 9, 2019. If you are interested in joining their beta program or have any feedback to help improve the Kitemetrics Destination and its documentation, please let their team know!

Getting Started

The first step is to make sure Kitemetrics supports the source type and connection mode you’ve chosen to implement. You can learn more about what dictates the connection modes we support here.

Web Mobile Server
📱 Device-mode
☁️ Cloud-mode
  1. From your Segment UI’s Destinations page click on “Add Destination”.
  2. Search for “Kitemetrics” within the Destinations Catalog and confirm the Source you’d like to connect to.
  3. Drop in the “API Key” into your Segment Settings UI which you can find from your Kitemetrics Account Settings -> Applications page.
  4. Once data is flowing from your source to the Kitemetrics destination, you will need to refresh your browser to view the latest data in your Kitemetrics analytics or keywords dashboard.


If you haven’t had a chance to review our spec, please take a look to understand what the Track method does.

In order to track Apple Search Ads attribution events you will need to include the Analytics-iAds-Attribution middleware library in your iOS source application.

If you are using Cocoa Pods, ensure the following two lines are included:

pod "Analytics"
pod "Analytics-iAds-Attribution"

Segment and Kitemetrics can automatically record the following events: “Application Installed”, “Application Opened”, “Application Updated”, “Install Attributed” and “In-App Purchases”. In order to capture those events you need to enable automatic tracking. Ensure you setup SEGAnalyticsConfiguration as shown below:


let configuration = SEGAnalyticsConfiguration(writeKey: "YOUR_WRITE_KEY")
configuration.trackApplicationLifecycleEvents = true
configuration.trackAttributionData = true
configuration.trackInAppPurchases = true
configuration.middlewares = [SEGADTracker.middleware()]
SEGAnalytics.setup(with: configuration)


SEGAnalyticsConfiguration *configuration = [SEGAnalyticsConfiguration configurationWithWriteKey:@"YOUR_WRITE_KEY"];
configuration.trackApplicationLifecycleEvents = YES;
configuration.trackAttributionData = YES;
configuration.trackInAppPurchases = YES;
configuration.middlewares = @[ [SEGADTracker middleware] ];
[SEGAnalytics setupWithConfiguration:configuration];

Kitemetrics will show the device installs, sessions and purchases on the Analytics Dashboard. Apple Search Ads keyword attribution and average revenue per user will show up at the Keywords page.


If you haven’t had a chance to review our spec, please take a look to understand what the Screen method does. You can turn on automatic screen tracking and/or call it manually. An example manual call would look like:


SEGAnalytics.shared().screen("Screen Title")


[[SEGAnalytics sharedAnalytics] screen:@"Screen Title"];

To turn on automatic screen tracking, set the SEGAnalyticsConfiguration, recordScreenViews property to true.


configuration.recordScreenViews = true


configuration.recordScreenViews = YES;

Screen calls will be sent to Kitemetrics as a custom event. They are available for selection as a KPI in Settings -> KPI. Screen calls can be a maximum of 255 characters. Do not include personally identifiable information. Please omit parameters or attributes from the Screen Call.


You can send computed traits and audiences generated through Segment Personas to this destination as a user property. To learn more about Personas, reach out for a demo.

For user-property destinations, an identify call will be sent to the destination for each user being added and removed. The property name will be the snake_cased version of the audience name you provide with a true/false value. For example, when a user first completes an order in the last 30 days, we will send an identify call with the property order_completed_last_30days: true, and when this user no longer satisfies we will set that value to false.

When the audience is first created an identify call is sent for every user in the audience. Subsequent syncs will only send updates for those users which were added or removed since the last sync.


Segment lets you change these destination settings from your Segment dashboard without having to touch any code.


You can find your API key on your Kitemetrics Account Settings -> Applications -> Application page.

This page was last modified: 21 Nov 2019

Get started with Segment

Segment is the easiest way to integrate your websites & mobile apps data to over 300 analytics and growth tools.
Create free account