XP curve calculator: see how many hours every level takes
Pick a curve, set XP per hour and your target hours, and the calculator shows total XP, hours to max level and whether it lands on your target, with a table of XP and hours for every level. Download it as CSV or copy JSON, GDScript or C#. A second calculator works out how many kills, chests or pulls until players get an item, with an optional pity counter. Free, in your browser, no sign-up.

Drops sheet, Classic RPG preset (Grindscale 1.0.0)
| Item | Drop chance | 1 in N | Tries for 90% | Pity at | Avg tries |
|---|---|---|---|---|---|
| Common material | 60% | 1.7 | 3 | none | 1.7 |
| Uncommon material | 25% | 4 | 9 | none | 4.0 |
| Rare gem | 10% | 10 | 22 | none | 10.0 |
| Epic weapon | 4% | 25 | 57 | 60 | 22.8 |
| Legendary mount | 1% | 100 | 230 | 200 | 86.6 |
Source: The Drops sheet of the Grindscale 1.0.0 workbook with the Classic RPG preset loaded, as published on the Grindscale store page.
How to design an XP curve in 4 steps
Decide the time first: how many hours should a typical player take to reach max level? Enter it as the target.
Set XP per hour at level 1 and how fast it grows. Players earn more at higher levels; if XP needed grows at the same rate, every level takes the same time.
Pick a curve and adjust the exponent or growth until hours to max lands on your target and hours per level rise gently.
Export the table (CSV, JSON, GDScript or C#) and drop it into your game.
Grindscale vs the alternatives
Published prices, each checked on the date shown; prices change, so confirm on each site.
| Product | Price | Free | Checked |
|---|---|---|---|
| Grindscale calculator + workbook | calculator free; workbook $7 once | XP curve + drop/pity calculator | live |
| Balancing Game Design Templates (Umka3250, itch.io) | $7.00 USD or more | 2026-10-10 | |
| RPG Economy & Item Pricing Spreadsheet (Sakuya, itch.io) | $10.00 USD or more | 2026-10-10 | |
| Economy Sink / Source Balancer (Template Foundry, itch.io, HTML5 tool) | $3.99 USD or more | 2026-10-10 |
Why teams pick Grindscale
- Time, not just XP: the table shows hours per level and total hours, so you see where players will stall.
- Exports straight to your engine: CSV, JSON, GDScript or C#.
- Drop odds included: half of players, 9 in 10 and 99 in 100 by which try, with or without pity.
FAQ
What is a good XP curve formula?
Most RPGs use a power curve (XP = base x level^1.5 to 2.2) or an exponential one (XP = base x growth^(level-1), growth 1.05 to 1.20). A blend keeps early levels quick and late ones long without exploding. Compare hours per level with how long you want players to take.
How is "tries for 90%" worked out?
With chance p per try, the share of players who have the item after n tries is 1 - (1 - p)^n. Solving for 90% gives n = ln(0.1) / ln(1 - p), rounded up. A 1% drop needs 230 tries. A pity counter guarantees the item on try N, so no player waits longer than N tries.
Why not a spreadsheet template from itch.io?
If XP is all you need, this calculator is free. Templates such as Umka3250's ($7.00 or more) or Sakuya's economy sheet ($10.00 or more) go further; the Grindscale workbook is $7 and links XP with gold, shop, loot, upgrades and a 60-day simulator.
Is my data saved?
The calculator runs in your browser; use Copy link to keep or share a setup.