App Events FAQ
An app can create up to 1,000 unique event names. If you exceed this limit you may see an
100 Invalid parameter error when logging.
If you need to remove obsolete events - you can deactivate events by following the instructions in our help center.
One typical reason we see developers go over event limits is because they don't take advantage of parameters and instead log individual events when they should be utilizing parameters. For instance, instead of logging a separate event for each time someone completes a level (e.g. Level Achieved 1, Level Achieved 2, etc), a developer should log a single event Achieved Level with a parameter of
level for the level number.
Event names and parameter names must be between 2 and 40 characters, and must consist of alphanumeric characters, _, -, or spaces.
The length of each parameter value can be no more than 100 characters.
You can define any event that you would like to capture and you will be able to see that event in your Facebook Analytics dashboard. We support logging up to 1,000 distinct event names and no limit on event volume. However, in Ads Reporting, we will only show the fourteen pre-defined App Events and any additional App Events will be logged as “Other Mobile App Actions“. For this reason, we recommend using one of the fourteen pre-defined App Events.
The 14 pre-defined events are:
- Achieved Level: You can log this event when a person completes a level in a game or a similar task within the app.
- Added Payment Info: You can log this event when a person adds payment information (such as a credit card, shipping address and so on) within the app.
- Added to Cart: You can log this event when a person adds an item (such as a product or service) to a shopping cart within the app.
- Added to Wishlist: You can log this event when a person adds an item (such as a product or service) to a wishlist within the app.
- App Launched: You can log this event when a person starts using the app on their device.
- Completed Registration: You can log this event when a person completes the account registration process within the app.
- Completed Tutorial: You can log this event when a person finishes a training or educational experience within the app.
- Initiated Checkout: You can log this event when a person begins the checkout process to purchase items (such as products or services) within the app.
- Purchased: You can log this event when a person buys an item (such as a product or service) within the app.
- Rated: You can log this event when a person rates or reviews something (such as a product, location and so on) within the app.
- Searched: You can log this event when a person conducts a search within the app.
- Spent Credits: You can log this event when a person uses credits to purchase an item (such as a product or service) within the app.
- Unlocked Achievement: You can log this event when a person reaches a particular goal in a game or makes a similar accomplishment within the app.
- Viewed Content: You can log this event when a person views content within the app.
Typically, developers find it easier to use the Facebook SDK to integrate App Events. The Facebook SDK helps reduce the amount of coding that is required and provides helpful metadata about your app such as the app version and app name. Using the SDK automatically provides, with minimal development effort, metrics such as time spent, number of sessions, and interruptions. The SDK also is able to collect the Android Advertiser ID or IDFA (if you are using App Events in connection with ad attribution) and handles Limit Ad Tracking for you. However, the limitation of the SDK is that you need to ship a new version of your app if you decide to add additional events. For most developers, the SDK option works best.
The API solution may be a better fit for developers who do not want to have to ship an updated version of their app to integrate App Events or add additional App Events. For developers who have hybrid web apps, integrating with the API may be easier as well. However, the API solution requires you to handle Limit Ad Tracking as well as IDFA and Android Advertiser ID collection on your own. Also, it does not provide the app usage metrics that are collected by the SDK automatically. For developers who wish to track additional metrics such as app version, app name, time spent, number of sessions, and interruptions, they will need to determine those metrics on their own and pass those metrics back as custom parameters through the API.
You can use both an MMP SDK and Facebook SDK in your app but you need to make sure that you don't pass the same event twice for both because this could result in double counting.
Yes, you can do this if you would like.
Prior to launching to the App Store, we recommend loading a test version of your app with updated code on a test device. Go through the most common flows in your app to trigger specific events that you want to test. Those events will now show up in Facebook Analytics. You can filter on the “most recently logged events” filter. To see more details on how to do this: go to the App Events documentation for your specific platform.
You can filter by App Version and event name within the [Most Recent](/docs/analytics/overview
- Forget to pass currency or value for a purchase or purchase related event
- Place the decimal in the wrong place
- Use a comma instead of a decimal for a numeric value
- Hardcoding conversion values by guessing the “average” order value as opposed to passing the actual value
- Click Select Condition, then select Device Info
- Click Select Parameter, then select Channel
- Click Enter a value, then type or select Messenger
- Click Save to continue and save the segment, or Apply to preview your data without saving the segment
Ads Reporting supports fourteen pre-defined App Events. If you are logging an event that does not fall into one of the pre-defined events, it will show up in Ads Reporting under “Other Mobile App Actions“.
Yes, we deliver your ads to people who are most likely to take specific action at least once at the lowest cost. Create a mobile app install ad set that optimizes for a specific app event via the API. This is similar to a regular mobile app install or mobile app engagement ad set except:
For mobile app engagement ads, optimize for standard App Events, except App Launch. These options available in Power Editor and the API. See Ads Help Center, Optimizing for App Events and Marketing API, Ad Set.
Automatic In-App Purchase Logging
By enabling the switch for in-app purchase logging, the following App Events will be tracked: Initiate Checkout, Purchase, and Purchase Cancellation.
Automatic logging reduces the amount of time needed to accurately log App Events. Instead of having to manually collect the events and determine what parameters to pass, all of that work is handled for you. For instance the following parameters are automatically logged: Product ID, quantity, total amount, currency, product title and product description. Also, if you are using version 3.22 or higher, you can automatically enable this without having to submit an updated client to the App Store.
If you are currently logging in-app purchases there is no need to enable this feature. However, you would like to adopt this functionality, you will want to stop explicitly logging in-app purchases events otherwise you may see duplicate counts in your reporting.
No, this is only applicable to in-app purchases.