Testing your integration

Batch provides a simple debug tool that allows you to test your custom data integration (⚙ Settings → Debug). It shows all the data available for a specific user ID:

  • Token: Find the token of a specific device.
  • Custom user ID: Check if your custom user ID implementation is working correctly.
  • Native attributes: See the installation date, last session date, country and more information on a specific user / install.
  • Custom data: See if your app is tagged properly and if custom attributes/events are sent to Batch.

Debug tool

Finding your ID

Installation ID

You can find the Installation ID of a device by calling:

  • Swift
  • Objective-C

You can either log this to the debug logs, or display it in a debug menu directly in your app. It can safely be exposed to your end users, who can then give it back to you if they are experiencing push trouble with their app.

Starting with Batch 1.18, the SDK will also automatically copy the installation ID to the clipboard if a user follows a backgrounding/foregrounding sequence.


You can use The Identifiers app to find your Advertising Identifier (IDFA). Just install the app on your device, tap on the share button and copy the Advertising identifier.

Understanding the results

The results displayed in the debug tool are updated in real time. There are five different pieces of information shown for a single ID:

  • Basic information (token, install ID, custom user ID, etc).
  • Native attributes prefixed with b. (b.attribute_name).
  • Custom attributes prefixed with c. (c.attribute_name).
  • Tags prefixed with t. (t.tag_name).
  • Events prefixed with e.(e.event_name).

Here are some details on the native attributes you will find in the results:

  • b.app_version: Version of the app installed on your user's device.
  • b.carrier_code: (Not supported on iOS 16.4+) Your user's carrier. The code provided by Batch is a combination of the Mobile country code (MCC) and the Mobile network code (MNC). The full list of MCC and MNC codes is available here.
  • b.city_code: City detected by Batch using IP geolocation.
  • b.device_brand: Brand of your user's device.
  • b.device_type: Model of your user's device. See here if you need more information on a specific iOS/android-v1 device model.
  • b.install_date: Install date of the app (UTC/GMT).
  • b.language: Language of your user.
  • b.last_push_date: Date of the last sent notification from the dashboard or the Campaigns API (UTC/GMT).
  • b.last_visit_date: Date of the last session (UTC/GMT).
  • b.os_version: Version of the OS used on your user's device.
  • b.region: Country of your user.
  • b.transaction_tracked: Your user has or hasn't made any purchases in your app. Make sure you are sending data on transactions to see this information.
  • b.is_push_optin: True if the install is opt-in to push, meaning that it can receive and display push notifications