Key takeaways
- Reward = your payout in USD x conversion rate x user split, then rounded. Everything else follows from that formula.
- Pick a rate high enough that small offers still show a whole number, and a split that leaves room for reversals and fees.
- Use a time-limited bonus for promotions instead of changing your base rate up and down.
What is a virtual currency exchange rate?
A virtual currency exchange rate tells your offerwall how many units of your currency, such as coins, points, or gems, one US dollar of your earnings is worth. The wall multiplies what an offer pays you by that rate, applies the share you pass on to users, and rounds the result. That number is the reward your user sees next to the offer and the amount your server credits.
This one setting shapes both what users feel and what you keep. Too stingy, and your wall looks empty and users leave. Too generous, and you pay out more than you earn or undercut your own in-app purchases. The good news is that it is entirely in your hands. This guide uses the settings Moonetix publishers actually have, with worked examples, so you can set the numbers once and keep them.
The reward formula: payout x rate x split
Every Moonetix app has three currency settings in its Currency tab, plus an optional bonus:
- Conversion rate: how many units of your currency equal $1 of your earnings, before the split. It must be greater than 0 and can have up to two decimals, so 1000, 250, or 1.5 all work.
- Split to user: the share of your earnings your users receive as currency, as a whole percentage from 1 to 100. You are paid in US dollars either way.
- Reward rounding: whole numbers, for points or coins, or up to 3 decimals, for dollar balances. Offers whose reward would round to 0 are not shown.
- Bonus (optional): a temporary percentage on top of every reward, up to 500%, paid from your own share, with an optional start and end that can repeat every day or every week. Your payout from Moonetix does not change.
Put together:
reward = round( payout_usd x conversion_rate x (user_split / 100) x (1 + bonus / 100) )
The payout here is what you earn for the offer, the same value that arrives in the {payout} postback macro. The result is the value in the {reward} macro. Whole-number rounding goes to the nearest unit, so 16.65 becomes 17 and 12.5 becomes 13. Three-decimal rounding turns 0.0084 into 0.008. The Currency tab has a live calculator that shows the reward for sample payouts as you type, so you can check any combination before you save.
Worked examples: five configurations
Here is what three offers that pay you $0.05, $0.37, and $2.50 show under five different settings, with no bonus. The setups are chosen to show the arithmetic; none of them is a recommendation.
| Setup | Rate per $1 | Split | Rounding | $0.05 offer | $0.37 offer | $2.50 offer |
|---|---|---|---|---|---|---|
| A. Classic coins | 1,000 | 100% | Whole | 50 | 370 | 2,500 |
| B. Coins with a margin | 1,000 | 70% | Whole | 35 | 259 | 1,750 |
| C. Game gems | 100 | 60% | Whole | 3 | 22 | 150 |
| D. Too low a rate | 10 | 50% | Whole | Hidden (0.25 rounds to 0) | 2 | 13 |
| E. Dollar balance | 1 | 80% | 3 decimals | 0.04 | 0.296 | 2 |
Three lessons fall out of this table.
Setup C loses precision. The $0.37 offer should give 22.2 gems but shows 22. That is a small difference, but at low values rounding can move a reward by 10% or more in either direction: an offer worth 1.4 gems shows 1, and one worth 1.5 shows 2.
Setup D hides offers. Any offer that pays less than $0.10 rounds to 0 and disappears from the wall, so users see fewer offers and you lose that revenue entirely. This is the cheapest mistake to fix: raise the rate and those offers come back.
Setup E needs a balance that stores decimals. If your database or display rounds 0.296 to 0.30, you pay out more than the reward you received, so store at least three decimals.
How to choose your conversion rate
Rule 1: keep small offers visible
Some offers pay you very little, a few cents or even a fraction of a cent. With whole-number rounding, an offer only appears if its reward is at least 0.5 before rounding, which gives a simple floor:
smallest visible payout = 0.5 / (conversion_rate x user_split / 100)
The visibility floor at 1,000 coins, 100 gems and a dollar balance
At 1,000 coins per $1 and a 70% split, the floor is 0.5 / 700 = about $0.0007, so almost every offer shows. At 100 gems per $1 and a 60% split, the floor is 0.5 / 60 = about $0.0083, so offers paying less than roughly eight tenths of a cent disappear. With three-decimal rounding, replace 0.5 with 0.0005: at a rate of 1 and an 80% split, the floor is about $0.0006.
A higher rate also means finer steps between rewards, so users can tell a $0.37 offer from a $0.40 one. That is another argument for a higher rate.
Rule 2: make the numbers read well
Users compare rewards at a glance. “450 gems” reads as more generous and more exact than “4.5 gems”, and whole numbers are easier to trust than long decimals. Unless your balance is literally in dollars, choose a rate that makes typical offers land in the tens to thousands.
Rule 3: anchor to what your currency already costs
If users can buy your currency, your store prices are the reference they will compare against. Work out how many units a buyer gets per dollar and decide deliberately how earning compares.
Store rules also shape a currency users can buy. Apple’s App Review Guidelines (section 3.1.1) require in-app purchase for in-game currencies and say credits or in-game currencies bought through in-app purchase may not expire. Google Play’s Payments policy lists virtual currencies among the items that must use Google Play’s billing system. Both were checked on November 4, 2026. Earned and bought currency usually sit in one balance, so a rate you later regret is hard to undo for either. Offerwall rules for iOS apps covers the Apple side in detail.
Illustrative case: pricing earned gems against a $9.99 gem pack
A game sells 1,200 gems for $9.99, about 120 gems per dollar spent. The developer sets 400 gems per $1 at a 50% split, so a user earns 200 gems for every dollar the developer earns. Earning is more generous per dollar of revenue than buying, which is fair because the user also gave time and effort, and a premium item still takes several offers. If purchases fall after launch while wall revenue rises by less, the rate is too generous. The game and its prices are made up; the comparison is what to copy.
If your currency cannot be bought or cashed out, the exact rate matters less than consistency: offers should feel worth it next to what your currency buys.
Rule 4: for real-money balances, use a round, explainable rate
On a rewards site where points turn into cash or gift cards, users want to know what a point is worth. Regulators watch stored value closely: the US Consumer Financial Protection Bureau’s April 2024 issue spotlight, Banking in Video Games and Virtual Worlds, found that games increasingly work like banking and payment systems for valuable assets, often without the same consumer protections. A clear, stable rate is part of treating balances fairly. A rate such as 1,000 points per $1 of value is easy to explain on your cashout page. If you show balances directly in dollars, set the rate to 1 and choose three-decimal rounding, as the dashboard suggests. How to start a rewards website covers cashouts and holds.
How to choose your user split
The split is the share of your earnings that turns into currency. It works differently depending on whether that currency costs you money.
- Currency with real value, such as points users cash out: the split is your biggest cost, and what is left must cover reversals, payment fees, fraud that gets through, support, servers, and marketing.
- Currency with no cash value, such as gems that only buy items in your game: the split is an economy setting. You can use a lower rate with a 100% split, or a higher rate with a lower split, and get the same rewards. Choose whichever keeps your numbers easiest to reason about.
What is left of $1 at a 75% user split
A rewards site gives users 75% of each payout. Suppose 4% of credited results are reversed after the user has already cashed out, and payment fees average 3% of cashouts. Per $1 earned: expected revenue after reversals is $0.96, users receive $0.75 in value, and fees cost about $0.02. That leaves about $0.19 before servers, support, and marketing. Treat the 4% and 3% as placeholders and swap in your own reversal rate from Reports, Chargebacks.
Publisher earnings and reversals explains how a reversal reaches you, and Stop multi-accounting and VPN abuse covers how to keep that rate low.
Bonuses: promote without changing your base rate
A bonus multiplies every reward by a percentage for as long as it runs. With a 10% bonus, a user who normally gets 100 coins gets 110. It is paid from your share, not by Moonetix, and you can set a start and an end, once or repeating every day or week. When the bonus has an end, users see a live countdown on the wall, which gives you a clear reason to announce it.
Check the total before you turn it on
For redeemable currency, the value users receive per $1 you earn is split x (1 + bonus). An 80% split with a 25% bonus hands out 100% of your earnings. A 90% split with a 20% bonus hands out 108%, so every completion loses money while the bonus runs.
Bonuses work best as short, planned events, such as a weekend or a launch, rather than a permanent state users learn to wait for.
Can you change your exchange rate later?
Yes. After you save, the wall shows rewards with the new settings, and every offer step credited from then on uses them. The reward is calculated and stored when a step is credited, so rewards already credited do not change, and a later reversal carries the same amount as the credit it cancels. A step that is still in progress or confirming when you change the rate gets the new settings when it is credited.
Balances in your own system are yours to manage; Moonetix does not touch them. If you change what a point is worth, you decide how existing balances are handled, and your terms should say so. Keep in mind that raising a rate is easy and lowering it is not. Users notice cuts immediately, so if you must lower the rate, announce it in advance and explain why.
If you need a different currency for part of your audience, for example a separate website, create a second app for it rather than changing the rate back and forth. The traffic quality rules explain when a second app is fine.
Common exchange rate mistakes
- Choosing a low rate for “premium feel” and hiding every small offer in the process.
- Crediting a different amount than
{reward}, for example by recalculating with your own rounding. Credit the value you receive. - Setting a 100% split on redeemable points and discovering later that reversals and fees come out of your own pocket.
- Stacking a bonus on a high split without checking the total.
- Storing dollar balances as whole cents while crediting three-decimal rewards.
- Changing the rate often, which makes users suspicious and your revenue data hard to compare.
Once your rate is live, the other big lever is where users find the wall. See Offerwall placement: where to put it to earn more.
How to add Moonetix to your site or app
Once you have picked your numbers, here is how to set up Moonetix in four steps.
- Apply as a publisher at moonetix.com. Every application is reviewed by hand, and once you are approved, apps you add are live right away.
- Add your site or app in the dashboard, then set the conversion rate, user split, rounding and optional bonus in the Currency tab, checking them with the live calculator.
- Open the wall with a signed link or iframe, the floating Earn button, an SDK, or your own design built with the Offers API. The Moonetix integration docs list every option.
- Credit exactly the
{reward}value from the signed postback, and use Send a test postback before launch, as shown in test your app before launch.
Setting your rate in the Moonetix Currency tab
Before you apply, run your own typical payouts through the formula above and pick a rate that keeps small offers visible. Then see how the Moonetix offerwall works.
Test a rate before your users see it
The free virtual currency calculator uses the same rounding as the Moonetix wall. Enter a rate and split to see the reward on any offer, which small offers would round to 0, and what you keep.
Frequently asked questions
What is a good conversion rate for offerwall coins?
There is no single right number, but a rate that makes typical offers land in the tens to thousands works well. Rates of 1,000 units per $1 or more keep small offers visible with whole-number rounding and are easy to explain.
How much of the payout should I give users?
For currency with cash value, leave enough to cover reversals, payment fees, fraud, and running costs. Work it out from your own reversal rate and fees. For currency with no cash value, the split is an economy choice rather than a cost.
Why do some offers not show on my offerwall?
One common reason is rounding: if an offer’s reward rounds to 0 under your rate and split, it is hidden. Raise the rate or switch to three-decimal rounding if you use a dollar balance. Offers also vary by country and device.
Can I show rewards in dollars instead of points?
Yes. Set the conversion rate to 1 and choose rounding up to 3 decimals. Make sure your own balance stores at least three decimals.
Does changing my rate affect rewards already credited?
No. The reward is calculated and stored when each step is credited, and its reversal carries the same amount. Steps credited after you save use the new settings, including steps a user started before the change.
Can I use one exchange rate for my website and a different one for my app?
Each Moonetix app has one currency with one rate. Add a second app for a second currency, and use the same user IDs in both if the same people use them.


