In-app message FAQ

Why are my users still seeing the In-App message I paused/finished?

In-App messages are evaluated and retrieved on Start or Force Content Update. As a result, there can be situations where the user qualified for the message and retrieved it on Start. If shortly after that the message is finished or paused, the user still has a copy of it on their device because there has not been a new Start or Force Content Update call. In this case, if the user performs the message trigger, the In-App message will be shown. The message will be removed at the next instance of Start of Force Content Update.

Why aren't my in-app messages triggered by Event triggers when parameter displaying?

Using the delivery "Event triggers when parameter" will display a message when the event occurs and the parameter is set to the value you specify. But, if multiple parameters of a single event trigger in-app messages, only one of those messages can display at a time. So if multiple parameters are tracked at once, only one of the associated messages will display.


For example, let's say you have a gaming app where the trigger event "Finish level 2" has two parameters, "Collect coin" and "Defeat boss," and each of these parameters is supposed to fire an in-app message.

Upon finishing level 2, if the user defeated the boss, but didn't get the coin, they would get the "Boss defeated!" message. If the user got the coin but didn't defeat the boss, they would get the "Coin collected!" message. But, if they defeated the boss and collected the coin, they would only get one message. (In general, the message that shows is the one associated with whichever parameter is listed first in your app.) 

Why is my background image getting cropped? Why doesn't my image look right?

Our SDK does a lot of work behind the scenes to fit your uploaded image to the in-app message template on a wide array of devices. For Center Pop-up and Push Pre-Permission messages, that means fitting the entire image to the message template itself (the pop-up) with some shrinking or stretching. For Interstitials, however, it means fitting the image to the size of the device's screen. In this case, the image may be cropped to fit the user's screen.

To prevent cropping, we recommend using segments with your Interstitial background image to target different devices (and therefore screen sizes). This way, you can get the image to display perfectly on both iPhone and iPhone Plus, for example. 

To add a segment to your background image setting:

  1. Hover over the background image label
  2. Click the +
  3. Create a segment by selecting Technology > Device model from the dropdown menu
  4. Enter in the device you want to target for this image file (e.g. "iPhone 7")

Are messages stored and sent locally or are they sent from the server?

Some message types are stored on the user's device for later delivery, and some types are sent directly from Leanplum servers.

All in-app message types (besides webhooks) are synced to the user's device on app start then displayed at the specified delivery point in the experience. If a user meets the Target for an in-app message at app start, the message is synced to their device and shown at the Display when trigger event, which is defined in the message set up.

Some message types are triggered and sent directly from our server. These message types include Triggered Push, Webhook, and email. Targets for these messages are evaluated at the time of trigger and at the time of send. The user must match the targets at both of these evaluations for the message to go through. Sending from our server, rather than syncing to the user's device, allows us to cancel the send if the user triggers an unless event, or in other words, a reverse trigger.

Was this article helpful?
Have more questions? Submit a request