This guide is general game-design information, not financial advice. Roblox rules and tools change, so check the official docs before you build around them. Numbers from our own game are shown as “what we did,” not as a formula that will work for you.
Retention comes before the shop
Most monetization advice starts with prices. It should start with why anyone would stay. A shop does not make a leaky game earn more. It makes a leaky game fail while showing a pop-up. Roblox says its recommendation system for the Home page leans on long-term retention, and spending, return visits and friend activity are signs of a healthy game.
So before you tune a price, check day-one and day-seven return in Creator Analytics and watch what new players do in their first ten minutes. If you do not have that foundation, our Roblox game launch checklist covers it. The rest of this guide assumes a game people come back to.
We learned a related lesson the hard way. In a postmortem of one of our own big updates, we wrote that players had loved our game as a fast, fair, low-effort fighter, and every change that added effort, grind or unfairness pulled them away. Monetization changes do the same thing when they are heavy-handed. Players forgive a shop they can ignore. They do not forgive one that blocks the fun.
Passes, products, subscriptions: what each is for
Roblox gives you several ways to sell. Match the tool to the thing you are selling.
- Game passes are one-time purchases with a permanent benefit: VIP status, a bonus area, a permanent multiplier. Roblox does not keep per-player purchase history for you, so you check ownership when a player joins.
- Developer products can be bought repeatedly: currency packs, revives, a one-use boost. Grant them through the receipt callback and only confirm after delivery.
- Subscriptions give recurring benefits for a monthly fee and are regionalized automatically.
- Private servers suit games where friends want their own space.
- Paid access charges to enter. Rarely right for a free-to-play game that depends on a broad audience.
For the details of each and how the money reaches you, see How to Make Money on Roblox as a Developer.
How to price game passes
People search for the right price as if there were a table. There is not. But there is a good method.
1. Price by experience change, not by cost to build
A pass that doubles coin income changes every minute of play. A pass that adds a cosmetic aura changes how you look. Players value those differently, and neither value has anything to do with how long it took you to script. Ask what the buyer gets in a session, not what you spent.
2. Offer a few clearly different levels
Two or three options are easier to compare than ten. A common shape is a small pass that most people can afford soon, a mid-priced pass that most paying players choose, and a large one for your most invested fans. In our own game, we kept the biggest gem pack priced mainly as an anchor. Its sales were close to zero, but it made the mid-size packs look sensible next to it. That is a classic trick, and it is only honest if the mid-size packs really are good value.
3. Reward bigger purchases
Bulk bonuses are easy to read and feel fair. Our gem packs followed that pattern: the bigger the pack, the more gems per Robux, so each step up had a visible reason behind it.
The structure is the part worth borrowing: each step up in price gives a visible reason to buy more. Work out your own values and steps from your own item values and audience.
4. Use the price Roblox lets you test
Managed Pricing bundles price optimization and regional pricing. Optimization suggests price points for passes and developer products from signals such as demand, conversion and spend. Regional pricing adjusts what a player sees by their economic location, and it stays between 30% and 100% of your default. New games and items are enrolled by default and you can opt out per item. One practical catch from the docs: hard-coded prices block opt-in, so read prices from the product info instead of typing them into scripts.
5. Remember who is buying
Roblox audiences skew young, and in our game most players were on phones or tablets. A price that works on PC players with disposable income may not work for a ten-year-old with a small Robux balance. Keep a few cheap, satisfying purchases available. Impulse items are a good fit for that, and in our game a low-priced daily item was among our top products by number of sales even though it was small in total value.
Soft and hard currency design
Most successful Roblox games use two currencies, and we use two. The split is simple to explain, and getting it clean matters more than the names.
- Soft currency (we called it coins). Earned in every match, every minute and every level. It buys the everyday things: common stickmen, auras, upgrades. It must feel plentiful. If players cannot earn it, they stop caring.
- Hard currency (we called it gems). Scarce to earn, easy to buy. It buys the rare things: top-tier stickmen, premium skins, rerolls. Each gem carried real Robux value, so every free gem we handed out was a sale we did not make.
That second point is the hard rule. Anything you give away in hard currency has a real cost, so give it out on purpose, in small amounts, tied to goals you want players to chase: a daily quest, a level milestone, a like goal. Give soft currency freely.
Give each currency one job
The most common economy bug is a currency with two jobs. If coins buy upgrades and also rare items, you will end up either too generous or too stingy. Write one sentence per currency, such as “Coins are for everyday items. Gems are for rare items,” and check every new shop item against it.
Show friendly numbers
A lesson from our own rework: small numbers feel stingy. When we scaled an economy down, a round reward turned into an odd small number and players noticed the loss even though ratios were unchanged. We now show round, readable amounts and scale the prices to match.
Shops without RNG
For a while we had a crate system: spend currency, get a random item at published odds. We designed it carefully, with each crate holding its own set of characters, every rarity represented, and duplicates handled. Then our owner decided he did not want to promote random-chance purchases to a young audience, and we replaced it. His direction, in his words, was a restock system where every item is available and nothing is gambling.
What we built instead is a shop with four rarity tiers, each gated by player level and refreshing on its own timer. Higher tiers need a higher level and restock less often, and the lowest tier restocks quickly so new players always have something to buy:
Every item of a tier is in stock at every restock, and a player can buy one character per tier per restock (VIP players get a little more). The timers are global, calculated from a shared clock, so every server shows the same thing. Some design notes on why this works.
- Players always know the price. No odds to read, no chase costs to estimate.
- Level gates advertise progression. A locked tier shows what level it needs, which gives players a goal.
- Timers give a reason to return. A restock countdown does the job that a daily-login nag does, with less annoyance.
- It is easy to explain to parents. That matters more than most developers expect on this platform.
The trade-off is real. A shop with no randomness has no big-win moment, so you need other excitement: a clear unlock ceremony, a limited-time event or a seasonal pass. Whether it earns more or less than crates depends on your game, and we do not claim it earns more. We chose it because it fits the audience we want.
If you do use chance, Roblox states that chance-based monetization must be transparent, and policy decides eligibility by location, age and platform. Read the official policy page rather than relying on forum memory.
Sources, sinks and the AFK trap
An economy is a set of faucets (where currency enters) and drains (where it leaves). Before shipping, list every source and put a number on it per hour of play. When we did that for our game, a pattern jumped out: our AFK reward paid gems at a steady per-minute rate. That made leaving the game idle worth many times more gems than actively playing, and a player who left it on overnight would wake up with a large pile of them. Since gems carried real Robux value, the setting was quietly giving away the premium currency.
Our proposed fix was to keep the concept and cap it. AFK would still give gems at the same rate, but only up to a small daily cap, then switch back to the soft currency. Players would still get the satisfying “I earned something while away” feeling, without turning the hard currency into free money.
The general rule: whenever a free source of hard currency is tied to time instead of effort, cap it per day. Then check that active play still out-earns idle play, or players will stop playing.
Add drains players want
Cosmetics, upgrades, cosmetic bundles and limited-time items are drains players are happy about. Avoid drains that feel like taxes, such as repair costs or forced rerolls. If the currency piles up unspent, your shop is not offering anything worth buying.
Build a price ladder
A new player should be able to spend a very small amount and feel good about it. A committed fan should have something bigger to buy. Aim for steps across the whole range, not a cliff after the first prompt.
- Impulse items. Low price, instant benefit: a daily item or a streak save.
- Starter offer. A one-time, time-limited pack for new players that is clearly worth more than its parts. We used a first-purchase pack with a short window.
- Everyday currency packs. The bulk-bonus ladder above.
- Passes. VIP, boosts and a battle pass for players who like the game.
- Big bundles. Seasonal bundles for your most invested players.
In our own data, low-cost impulse items made up most purchases by count but only a small share of revenue. Do not judge them by revenue alone. They are often how a player becomes a payer in the first place.
Testing and measuring
Treat every monetization change as an experiment.
- One change per release. If you change the economy, the UI and the matchmaking at once, you will never know which one moved your numbers. We learned this the expensive way and now ship one theme per release.
- A/B test big changes. Give half of new players the change for a day or two before rolling it out.
- Log the funnel. Shop opened, item viewed, prompt shown, purchase made, and the failure reasons. We found that many players who opened our gem store never tapped a pack, which pointed to a store layout problem rather than a pricing one.
- Keep data readable. If you change something every day, you cannot read the results. Use quiet windows between releases.
- Watch retention alongside revenue. A change that lifts spending and cuts day-seven return is usually a loss.
When you want more players to run the shop on, our guide to making a Roblox game that gets players covers design for clips and retention.
Common mistakes
- Selling power in a PvP game. Stat advantages read as pay-to-win. We moved toward cosmetic and mastery-based progression for this reason.
- Too many currencies. Two is plenty. Three needs a very good reason.
- Pop-ups on first join. Let players enjoy the game before you ask for money.
- No cheap option. If the smallest purchase is large, most players have nothing to buy.
- Broken purchase handling. Players who pay and get nothing leave and tell others. Test the receipt path and save failures. A failed save load should never look like a new player.
- Giving hard currency away by accident. Audit every source, as above.
Frequently asked questions
How much should I charge for a game pass?
There is no universal number. Price a pass by how much it changes the experience and by what your players can already afford from playing. Start with two or three options at clearly different levels, then use Roblox’s Managed Pricing and your own sales data to adjust. Roblox’s docs say a promoted pass must be priced above 49 and below 801 Robux, which is a useful sanity band for a first test.
What is the difference between a game pass and a developer product?
A pass is bought once and keeps its benefit forever, such as a VIP area or a permanent boost. A developer product can be bought repeatedly, such as a currency pack or a revive. If a player would reasonably want a second one, make it a developer product.
What are soft and hard currency?
Soft currency is earned by playing and spent on everyday items. Hard currency is scarce, mostly bought with Robux, and spent on premium items. Keeping them separate lets free players progress while giving spenders something worth paying for.
Should I use loot boxes or random crates?
Roblox requires chance-based monetization to be transparent, and policy limits who can buy paid random items. Many developers building for younger players avoid chance entirely. We removed crates from our own game in favor of a restock shop where every item can be bought directly.
Does monetization hurt retention?
It can. Paywalls on core progress, confusing currencies and heavy pop-ups push players out. Our own experience was that players leave when the game feels unfair, so we keep power differences small and sell choice, cosmetics and convenience.
How do I test prices without upsetting players?
Change one thing at a time, avoid quiet-period surprises, and give each price a fair run before judging it. Roblox’s price optimization runs its own experiments on eligible passes and developer products, and you can opt items out. Never change a price during a big event if you want clean data.