Skip to main content
Private beta. In-App Messaging is not yet generally available. To enable it for your workspace, contact your account manager or email support@gameball.co.
In-app messages reach customers at the moment they are already using your app, which makes them the most immediate channel you have. With Gameball’s In-App Messaging, you can show a banner, a card, or a full-screen message the moment a customer does something worth responding to, and change what it says from the dashboard without shipping an app update.
Prerequisites: The Gameball SDK must be integrated in your app, and in-app messaging must be enabled by your development team. See the iOS, Android, Flutter, React Native, or Web setup guide.

Understanding In-App Messages

Unlike push notifications, which reach customers outside your app, in-app messages appear while the customer is already engaged. That makes them well suited to guiding someone through a moment rather than pulling them back in. Here are some ideas for campaigns that you can send out:

Promote a Points Offer

Show a limited-time bonus points offer the moment a customer opens the app.

Rescue an Abandoned Cart

Respond to an add-to-cart event with a reminder or an incentive to complete the purchase.

Celebrate a Tier Upgrade

Congratulate customers who reach a new VIP tier and show them what they unlocked.

Ask for Notification Permission

Explain the value first, then prompt customers to turn on push notifications.

Message Types

Slide-up

A compact banner at the top or bottom of the screen. The app stays usable underneath, so it is the least disruptive option. Best for nudges and reminders.

Modal

A card centered over a dimmed background, with a header, body, and optional image. Takes up to two buttons. Best for offers that need a decision.

Full Screen

An edge-to-edge message with artwork and buttons. The most attention-grabbing option. Best for announcements and welcome moments.

Configuring an In-App Messaging Campaign

To set up an In-App Messaging campaign from scratch in Gameball, follow these steps:
1

Navigate to Dashboard

Navigate to the Gameball Dashboard.
2

Open Campaigns

Click on Campaigns.
3

Create Communication Campaign

Choose Communication Campaigns, then click on the Create Campaign button.
4

Select In-App Message

From the Start from Scratch section, choose In-App Message.

Step 1: Rules

1

Set Your Audience

In the Audience section, choose who is eligible for this message:
  • All Customers (Registered & Guest)
  • Guest Customers (customers Gameball has not been able to identify)
  • Registered Customers
  • Specific Customers based on:
    • Segments
    • Tags
    • VIP Tiers
    • Customer Attributes
    • A combination of the above
2

Choose the Platforms

Select the platforms this campaign should reach. A campaign targeted at one platform will not appear on the other.
3

Define the Trigger

Choose what causes the message to appear:
  • Session Start: The message is considered every time the customer opens the app or returns to it after being away.
  • Custom Event: The message is considered when your app reports a specific action, such as add_to_cart. Only your own events are available as triggers.
  • Purchase: The message is considered when a customer completes a purchase.
4

Add Event Filters (Optional)

Narrow an event or purchase trigger by the details the event carries, for example “purchase where price is greater than 100”. All filters you add must match.
If the event does not include the property you filtered on, the customer is not eligible for that occurrence. A filter is a requirement, not a preference.
5

Save and Continue

Click Save and Continue.

Step 2: Delivery

1

Set the Priority

Choose High, Normal, or Low. When more than one campaign matches the same moment, the highest priority wins. Campaigns of equal priority are ranked by the order you set in Settings > In-app.
2

Configure Frequency

Decide how often a customer can see this message:
  • Once per customer: One time, ever. This is the default.
  • Repeat: Show again after a minimum gap, set in minutes, hours, or days.
  • Cap: At most a set number of times per day or per week.
  • Total impressions: Stop the campaign for everyone after it has been shown a set number of times.
3

Set the Schedule

Start the campaign immediately or on a chosen date and time, with an optional end date. Times follow your account timezone.
4

Save and Continue

Click Save and Continue.

Step 3: Compose

1

Choose the Message Type

Pick Slide-up, Modal, or Full Screen. A modal or full screen can also be built as artwork only, where the image is the whole message and the buttons sit over it.
2

Write the Content

Write the header and body for each language you support. The customer sees the language set on their profile, falling back to your campaign’s default language.
A language with incomplete content is not sent. Fill in every field for each language you enable.
3

Personalize the Message

Insert a customer’s own details into the copy using these variables:{player_name} {first_name} {player_last_name} {player_display_name} {player_unique_id} {player_email} {points_balance} {available_points} {pending_points}A variable that cannot be filled in for a customer is left blank rather than shown as raw text.
4

Add Artwork

Upload a PNG, JPEG, WebP, or GIF through the composer. Images must be served securely, and a campaign whose image fails to load is skipped so another campaign can show instead.
5

Style the Message

Set background, header, body, and close-button colors, the shading behind a modal, text alignment, where a slide-up appears, and how long it stays on screen. Anything you leave unset follows your app’s own theme.
6

Add Buttons and Actions

A modal or full screen takes up to two buttons. The message itself can also be tappable. Each button or message can:
7

Save and Continue

Click Save and Continue.

Step 4: Variants and Goal

1

Add Variants (Optional)

Test up to five versions of the message against each other. Each variant has its own content, style, and share of the audience, and the shares add up to 100%. One variant can be a control group that receives nothing, so you can measure how much the campaign actually added.Customers are assigned to a variant the first time they become eligible and stay in it for the life of the campaign.
2

Define the Campaign Goal

Choose the action that counts as success, such as completing a purchase, and the number of days to keep attributing it after a customer sees the message. Seven days is the default.Optionally turn on suppress after conversion to stop showing the message to customers who have already converted.
3

Save and Continue

Click Save and Continue.

Step 5: Preview

1

Review Configurations

Review and edit the configured settings to ensure alignment with campaign objectives.
2

Send a Test Message

Use Send to device to preview one variant on a single device before launching. Test messages do not affect your campaign statistics.
3

Set Live

Lastly, click Set live.

Account-Level In-App Settings

Settings > In-app holds three controls that apply to every in-app campaign in your account.

Tracking Performance

Select a campaign from the Communication Campaigns list to see how it performed.
Statistics appear 10 to 30 minutes after customers interact with a message, and conversions are attributed within about 5 minutes.

Managing Campaigns

  • Access the Communication Campaigns section in the Gameball Dashboard to view all configured campaigns, including in-app messages.
  • A campaign is a Draft until you set it live, Live while it is running, Paused when you stop it, and Ended once its end date passes.
  • Duplicating a campaign creates a draft copy you can edit and launch separately.
  • Select a campaign to deactivate/activate or delete it from the options menu.
Edits to a live campaign reach customers the next time they open your app.

Important Notes

Caps may be exceeded slightly. Daily caps, weekly caps, and total impression limits are applied from reported statistics, which lag by 10 to 30 minutes. A very active customer may see a capped message once more than expected inside that window. Once-per-customer and repeat gaps are exact.
Variants lock after launch. Once the first customer has been assigned to a variant, you cannot add or remove variants, change the split, or change the message type. Plan your test before setting the campaign live.
One message at a time. Only one in-app message is shown at a time. If two campaigns match the same moment, the higher-priority one shows and the other waits its turn.

Common Questions

Check that the campaign is live, that it targets the customer’s platform, and that the customer is in the audience. Then check whether the customer has already seen it, since once per customer is the default frequency, and whether your account’s cooldown or quiet hours are suppressing it. If nothing else explains it, your development team can confirm that in-app messaging is started in the app.
No. One message is shown at a time. A second matching campaign waits and appears after the first is closed.
Yes. The name, content, translations, audience, trigger, delivery rules, and styling all stay editable, and the changes reach customers the next time they open your app. Only the variant setup locks once customers have been assigned.
The language is chosen when the customer opens the app. A customer’s preferred language wins, and your campaign’s default is used when they have none. A language change therefore takes effect the next time they open the app rather than immediately.
No. Messages sent with Send to device display normally but are not counted in impressions, clicks, or conversions.

Create and Configure Mobile Push Campaigns

Reach customers with notifications when they are outside your app.

Create and Configure Web Message Campaigns

Engage customers during their journey on your website.

Dynamic Variables in Communication Campaigns

Personalize campaign content with customer data.