- Managed Pricing is Roblox's single pricing system in Creator Hub that merges Regional Pricing and Price Optimization into one opt-in flow. It launched on June 15, 2026, and after opt-in it replaces the Price Optimization tab in your dashboard.
- New games and newly created items are enrolled automatically, and any items you already had on regional pricing move over on their own. You can opt any single item out at any time.
- Regional prices are always between 30% and 100% of the price you set as the default. A 100 Robux item can drop as low as 30 Robux in some regions and never go above 100 Robux.
- Price optimization tests need volume. Roblox states a game generally needs at least 60,000 transactions in the previous 30 days before a test will run.
- If your game trades or gifts items, price differences between regions become an arbitrage risk, and the GetUsersPriceLevelsAsync API is the tool Roblox gives you to police it.
Roblox had two separate pricing tools for years. Regional Pricing adjusted your prices per country. Price Optimization ran tests to find a better price point inside your own game. Managing both meant doing the same work twice, and a lot of creators simply left one switched off.
Managed Pricing puts both under one tab: Creator Hub, then Monetization, then Managed Pricing. You run a one-time opt-in flow, pick which items are included, and the system handles the rest. Roblox's own framing is that pricing changes too often to keep up with by hand, so the point of the tool is to remove the repeated manual work rather than to add a new lever.
Two things to know before you touch it. First, after opt-in, the Price Optimization tab disappears from your dashboard and is replaced by Managed Pricing. Second, if Roblox detects hard-coded prices in your game during onboarding, the flow stops and asks you to fix them before you continue. That is the same problem regional pricing has had since 2025, just surfaced earlier.
The three pricing levers and what each one covers
| Lever | What it does | Default state in 2026 |
| Regional Pricing | Adjusts a price per economic location using purchasing power, exchange rates and local spending behaviour. Bounded at 30% to 100% of your default price. | On by default for all new and existing passes since March 30, 2026. Developer products still need you to opt in individually. Subscriptions priced in Robux are always regionalized and cannot be turned off. |
| Price Optimization | Splits your players into groups, shows each group a different price, measures conversion, then applies the winner only if it lifts total revenue. | Opt-in through Managed Pricing. Tests run automatically at least every 90 days, or sooner when Roblox thinks your prices have drifted. |
| Managed Pricing | The container that holds both of the above plus reporting, test history and bulk item controls. | New games and new items enrolled by default. Existing regional pricing items migrate automatically. |
The 30% floor and the 100% ceiling
Regional prices never go below 30% of the default price you set, and never above it. Roblox uses one example throughout its documentation: a 100 Robux item can be priced as low as 30 Robux in the cheapest region and tops out at 100 Robux anywhere.
That floor matters more than it looks. A discount that deep is a meaningful gap between two players on the same server, which is why the trade and gift controls exist at all. It also means the headline numbers you see from Roblox are driven by how far below the ceiling your audience sits, not by the size of the discount alone.
Roblox publishes these outcome ranges for games that adopted regional pricing on passes, measured across the top 2,500 experiences between January 6 and December 21, 2025, excluding the first 14 weeks of data from newly created games:
| Metric | Reported change |
| Overall Robux spend | 4% to 10% increase |
| Players and playtime | 1% to 6% increase |
| Pass purchases in discounted regions | 43% to 52% increase |
Those three sets of numbers do not agree with each other because they measure different things in different years, and Roblox labels all of them as early results that may change. Treat them as direction, not as a forecast for your own game.
Hard-coded prices are the part that breaks games
This is the most common way regional pricing quietly breaks a game, and it is worth the section on its own.
Managed Pricing adjusts the price Roblox charges the player. It does not adjust any number you have written into your own UI. If your shop says 500 Robux in a TextLabel and never asks the platform what the real price is, a player in a discounted region gets charged the local price while your screen still shows 500. The charge is right, the display is wrong, and you will hear about it in reviews.
Roblox's fix is to stop hard-coding and pull the price at runtime instead. The regional pricing documentation points at two methods for this:
- GetProductInfoAsync, for the price of one developer product or pass.
- GetDeveloperProductsAsync, for the prices of every developer product in your game at once.
Roblox also ships a tool to find the offenders. In Creator Hub go to Monetization, open Passes or Developer Products, click the ellipsis and choose Dynamic Price Check. You add up to five test accounts, then pick a testing type:
- Price pinned. Every dynamically-scripted price is replaced with one fake Robux amount.
- Location pinned. Every dynamically-scripted price is replaced with the price for a fake economic location.
One more detail that trips people up: the InfoType parameter in GetProductInfo defaults to fetching an asset. To fetch a developer product you pass Enum.InfoType.Product, and to fetch a pass you pass Enum.InfoType.GamePasses. Ask for the wrong type and you get the wrong object back.
The trade and gift problem
If your game lets players give items or currency to each other, regional pricing creates an arbitrage opportunity: a player in a cheap region buys low and hands the item to a player in an expensive region. Roblox's answer is GetUsersPriceLevelsAsync.
It returns a number between 1 and 1000 for each user, where 1000 means full global price and lower numbers mean the user typically pays less. Roblox's own examples spell out the scale: a user at 1000 pays 100% of the base price, a user at 500 pays 50% of it, and the difference between those two players is 500.
You use those numbers to decide whether a transfer should be allowed. The documentation ships sample code for both directions: a check that the sender's price level is greater than or equal to the recipient's, for gifting, and a check that two users have exactly the same price level, for trading. Either way, the pattern is the same, fetch the levels for both players, compare, then approve or block.
Two operational rules come with it. Roblox recommends you do not cache the results after a session, because price levels change, and stale values lead to bad transfer decisions. And it asks you to call the method at player join rather than at the moment of transfer, so the value is fresh.
The 60,000 transaction threshold
Price optimization only works on games with enough data to measure. Roblox's documentation puts the bar at roughly 60,000 transactions over the previous 30 days for a game to have a meaningful shot at a test.
If you are under that line, regional pricing still works, but price optimization does not. That is the case for most games on the platform. It is also the reason the automatic test cadence reads every 90 days rather than every week: a small game simply cannot produce a trustworthy read that fast.
A test runs for about three weeks before you get an email saying it finished, and the Managed Pricing page then shows the recommended prices, the percentage change being suggested, and the projected long term revenue impact. You review and apply them yourself, or you stop the test, which puts every price back where it started.
How to set it up
- Go to Creations, pick your game, then open Monetization and Managed Pricing.
- Complete the one-time opt-in flow. If hard-coded prices are detected you are asked to fix them first.
- Review the eligible items and choose what to include. Bulk actions let you enable or disable many at once.
- Run the Dynamic Price Check before you go live with it, and fix anything flagged.
- If you trade or gift items, add GetUsersPriceLevelsAsync at player join and gate transfers on the comparison.
- Watch the tab for at least one automatic test cycle so you know what a real result looks like in your own game.
Does Roblox change my prices without asking?
It can, but only inside the bounds you set. Regional prices stay between 30% and 100% of the default price, and price optimization only applies a new price when the test shows positive incremental revenue. You also get a review step before prices go live, and you can stop a running test to revert everything.
Can I opt out?
Yes, at the item level, at any time. New games and new items are enrolled by default, which is why the control matters. The one exception is subscriptions priced in Robux, which are always regionalized and cannot be turned off. Managed pricing is also not available for subscriptions priced in local currency.
I already use regional pricing. Do I need to do anything?
No. Roblox states that existing regional pricing items transition to managed pricing automatically. Passes in particular have defaulted to regional pricing since March 30, 2026, so for most games that part is already done.
Will regional pricing help my game?
It depends on where your players are. Roblox's published ranges, a 4% to 10% increase in Robux spend and a 43% to 52% increase in pass purchases in discounted regions, come from the top 2,500 experiences. A game whose audience is almost entirely in a strong payer market may see little change, because markets with strong payer penetration get little or no discount by design.
What if a player uses a VPN to get a cheaper price?
Economic location is not the same as account location. Roblox says it looks at signals including VPN usage, billing history and account history, and if it cannot determine a location the player sees your default global price instead. That is also why the documentation tells you not to cache price level results.
Does this change how my sales pay out?
Regional pricing changes the local listed price, not your revenue share percentage. Marketplace items keep their progressive share that runs from 30% at the floor to 70% at six times the floor, and in-game sales still pay 30% to the creator with 40% to the game owner. A cheaper local price means a smaller Robux amount per sale, which is the trade-off against higher conversion.
Can players trade regionally priced items freely?
On Roblox's own Marketplace and in games with trading, yes, with limits. Anything you build yourself, such as a player-to-player shop, is where you have to police it with GetUsersPriceLevelsAsync, because that is the only place you can see the gap between two players.
Sources
- Roblox Developer Forum: Managed Pricing announcement, June 15 2026, with the regional pricing and price optimization outcome ranges
- Roblox Creator Hub: Managed pricing, the opt-in flow, item eligibility and defaults
- Roblox Creator Hub: Regional pricing, the 30% to 100% bounds, dynamic price checking and GetUsersPriceLevelsAsync
- Roblox Creator Hub: Price optimization, the 60,000 transaction threshold, test mechanics and limitations
- Roblox Developer Forum: enabling regional prices for all passes on March 30 2026, and why developer products stayed opt-in
- Roblox Developer Forum: regional pricing for passes launch, April 2025, with the 30% floor clarification
- Roblox Developer Forum: regional pricing for developer products, October 2025, with the Brazil, Philippines and Mexico paying user figures
- Roblox newsroom: launching regional pricing, April 22 2025, with the 1,000 Robux example and the Mexico, Brazil and Philippines spend figures
- Roblox Developer Forum: community request for server-side regional price access and the limits of GetUsersPriceLevelsAsync