▪️Promotions
A Promotion is a time-boxed, personalized campaign page built for retention - a page that revolves around one offer, like a weekend tournament, a December raffle, a jackpot, or a clan championship. You spin one up per promotion, drive your existing players to it, and retire it when the offer ends.

Check examples of the widgets, landings, promotions, and custom games on https://smartico.dev
When to use a promotion
Use a promotion for a specific, dated offer aimed at players who already have accounts. It is the page you link from a campaign - the destination behind a "Join the weekend tournament" push or email.
How a promotion identifies the player
A promotion is a standalone page on a Smartico-managed domain. Because it shows personalized data (the player's rank, points, progress), it has to know which player is viewing it. That comes from parameters on the page URL. When you drive a player to the page, the link carries:
Parameter
What it is
_smartico_label_public_key
Your label's public key (identifies your program).
_smartico_brand_public_key
The brand's public key.
_smartico_user_ext_id
The player's external user id (who is viewing).
_smartico_user_hash
A time-limited security hash, when your label uses hash protection.
_smartico_language
The language to render.
The player is already recognized, and the page shows their live data.
Note: the _smartico_label_public_key and _smartico_brand_public_key can be passed in the URL for your convenience and easier setup, but for production usage, we recommend placing them in the index.html file.

Publishing (step by step)
Publish. Click Publish in the toolbar. On success, the Page link popup ("Get link") opens with the public URL on the CDN.
Copy the URL. The popup gives you a ready-to-test link. It carries the label/brand keys plus your preview user, so you can open it as-is to check the page.

Go to production. The preview user is for testing only. For real traffic, keep the label/brand keys, but replace
_smartico_user_ext_id(and_smartico_user_hash) with the real logged-in player's values. In practice, you don't build links by hand - you drive players from a campaign that personalizes the link per recipient (push, inbox, email, or an on-site CTA). Vibe Studio gives you the base URL and the parameter names; the campaign fills in the values for each player.
Read a detailed guide about navigating users to Promotions and Landings
Where the keys come from
You don't enter keys in Vibe Studio - it resolves them and shows them in the Page link popup so you know what the published page expects:
Label public key - your label's Smartico public key (the same one your site uses for
_smartico.init).Brand public key - each brand under your label has its own, managed in your brand settings.
User ext id / user hash - the player's identifier and its security hash, supplied per player by your campaign at send time.
If the promotion is about one specific thing
Many promotion templates are built around a single entity - one tournament, one raffle, one jackpot. Those declare an extra field: a toolbar picker where you choose which entity the page is about.

For the production usage, you can either pass the 'id' in the URL, e.g., '&id=152' or fix it in the index.html
Translating a promotion
Ask the assistant to translate (or run /translate), then preview each language.

Then select the language to preview your page

Note the split: the mechanic's own content (mission and tournament names) is translated in the Back Office, on the mechanic's management screen; the page's own text (headings, labels, CTAs) is translated here in the Studio. See Preview for users, brands, and languages.
Examples to ask the assistant for
"A weekend slots tournament page: hero with the prize pool and a countdown to Sunday 23:59, a live leaderboard, my current rank and points, and the full prize breakdown."
"A raffle page showing my tickets, the draw time with a countdown, the prizes, and how to earn more tickets."
FAQ
How do players arrive logged in? The link carries the keys that identify the player. You don't manage that by hand - your campaign personalizes the link per player; just publish and share the base URL.
Can I serve it from my own domain? Yes - promotions and landings can live on a custom domain you delegate to Smartico (e.g. tournament.mycasino.com). See Domains & technical setup.
The page loads but shows no personalized data. The URL is missing the player parameters (or the hash has expired). Check that your campaign appends _smartico_user_ext_id (and _smartico_user_hash if your label uses it) along with the label/brand keys.
Last updated
Was this helpful?