- Hand Replayer
- Friends
Bankroll
Edit or delete a session
To edit a session, go to the Bankroll page and swipe to the Sessions tab. Press and hold the session, then select Edit. A window will open where you can modify all the session details.
Track multi-day tournaments
Click the + button to add a session. Select Multi-Day Tournament in the type field. Enter the start date, end date, and total hours played. For example, if you played 3 days of 8 hours a day, enter 24 hours. Fill in the other fields as usual.
Track deposits and withdrawals
When you withdraw or deposit money from your bankroll, add a bankroll entry and select Deposit/Payout as the type instead of Cash Game. Enter a positive or negative amount.
Sellings or buying shares
If you sold shares, enter the amount your shareholder paid from your buy-in under Shares income. Enter the amount your shareholder will receive from your cash-out under Shares outgoings. Example: You sell 10% of a session with a total buy-in of $100 and a total cash-out of $200. In this case, Shares income is $10 and Shares outgoings is $20.
If you bought shares, enter the amount you paid from the player’s buy-in in the Invested field. Under Winnings, enter the amount you received from the player’s cash-out. Example: A friend played a session where he bought in for $100 and cashed out for $200. You bought 10% of his action. In this case, enter buy-in is $100, cash-out is $200, Invested is $10 and Winnings is $20. Always enter the correct values that the player bought in with and cashed out with in the buy-in and cash-out fields.
Alternatively, you can use the slider to automatically fill in the fields. To do this, you must first enter the buy-in and cash-out amounts. If you have sold/bought with mark-up, edit the fields if necessary.
How we calculate statistics
There are three types of results:
- grossProfit (tableProfit) = cashout − buyin − rebuy costs
- netProfit = grossProfit − expenses
- totalResult = netProfit + shares + stakings + casino games + jackpot + deposit – payouts
We calculate Hourly and ROI based on netProfit. If you enable the Real Performance switch, Hourly and ROI are calculated from grossProfit instead, meaning expenses are not taken into account.
Real performance
If you enable the Real Performance switch, your Hourly is calculated without expenses.
Example session:
buyin = $100, cashout = $200, expenses = $10, duration = 2h
Your normal Hourly is:
cashout − buyin − expenses = $90 / 2h = $45
With Real Performance enabled, your Hourly is calculated without expenses:
cashout − buyin = $100 / 2h = $50
Additionally, the bankroll overview page shows your total earnings without sold shares, giving you an overview of how you would have performed if you hadn’t sold any shares.
Track expenses
There are two types of expenses: Expenses and Expenses in chips.
- Expenses in chips are costs you pay directly from your stack during a cash game session (typically dealer tips). These are not deducted from netProfit because they are already reflected in your Hourly, as they reduce your cashout.
- Expenses reduce your netProfit. These usually represent unavoidable costs such as entry fees or hourly rake.
If you want to track costs that should not affect your Hourly (e.g. hotel expenses), create a separate entry and set the type to “Costs”.
Track a jackpot or bonus
If you win a Bad Beat Jackpot or similar, you can keep track of it without it affecting your game statistics. To do this, add a new bankroll entry and select Jackpot/Bonus as the type instead of Cash Game. You can also choose whether or not to include this win in your Cash Game/Tournament statistics.
Tags
You can tag sessions. For example, you might want to see all the sessions for a trip together in one view. Select and hold a session, and then click Edit. In the Tags field, type “Vegas Trip 2024”, for example. Repeat for all sessions on the trip. This will give you an overview of the profit and a trend of your poker trip. You can also share a Tag with friends. This is useful if you have made a staking agreement.
Benchmark

The benchmark system allows you to compare your performance against other players in the same game type and stake level. Your performance is measured in BB/h and compared to other players within the same category (e.g. NLH Micro Live, PLO Mid Online, etc.).
Who is included in the benchmark?
Only qualified players are included in the benchmark pool. A player qualifies if they meet at least one of the following criteria within the last 365 days:
- Played at least 5 sessions in the category, or
- Played at least 20 hours in the category
This ensures that only players with a meaningful sample size are included, improving the reliability of the benchmark.
Which sessions are counted?
Only sessions that meet all of the following conditions are included:
- Cash games only
- Self-played sessions only (no staking)
- Valid session duration (between 15 minutes and 24 hours)
- Realistic results (extreme outliers are filtered out)
- Played within the last 365 days
Game & Category Matching
Each session is assigned to a category based on:
- Game type (e.g. No Limit Hold’em, Pot Limit Omaha)
- Stakes (based on Big Blind or Third Blind if applicable)
- Environment (Live or Online)
To ensure correct classification, the game field must be entered as NLH, Holdem, Texas Holdem, Omaha, or PLO. Only sessions with these recognized game names are included in the respective benchmark categories.
Stake levels are grouped into categories such as Micro, Low, Mid and High.
How comparisons work
Your results are compared against all qualified players in the same category. The system calculates:
- Median performance
- Percentiles (e.g. Top 5%, Top 20%)
- Player distribution across the field
Your position is shown as:
- Percentile ranking (e.g. better than 84% of players)
- Performance tier (e.g. Crusher, Strong Winner, etc.)
Data updates
The benchmark pool is recalculated once per day at midnight (GMT+0 / UTC).
This means:
- New sessions are included daily
- Updated or edited sessions are reflected in the next calculation
- Rankings and percentiles may change over time as more data becomes available
When no ranking is shown
A ranking is only displayed if you meet the minimum requirements (see above), and there are enough qualified players in the pool. If not, you will still see your stats, but no comparison is shown yet.
Why this system?
The benchmark is designed to be:
- Fair → only real, meaningful data is used
- Gross Profit → statistics are calculated using gross profit
- Comparable → only similar games and stakes are grouped
- Robust → outliers and low-sample players are filtered out
To ensure the fairest possible comparison, the statistics are calculated using gross profit. This ensures that your ranking reflects actual performance, not noise.
Variance calculation
The variance calculator tells you the expected variance based on your last cash game sessions. The white line shows your expected value (EV) in Big Blinds per 100 hands. The app takes your EV, your standard deviation (SD), and calculates 20 cases to keep the best and the worst case.
The SD is an indicator of how swingy your play is. For example: A supermarket sells nuts at 1000 per pack, and you have bought 5 packs. You open the packs and count the nuts. The 1st pack contains 1005 nuts (+5), the 2nd contains 998 nuts (-2), the 3rd contains 996 nuts (-4), the 4th contains 1003 nuts (+3), and the 5th contains 1001 nuts (+1). These deviations are relative to the expected value of 1000 nuts. To calculate the standard deviation, you first square these deviations:
5² = 25, -2² = 4, -4² = 16, 3² = 9, 1² = 1
The mean squared deviation is then:
(25 + 4 + 16 + 9 + 1) / 5 = 11
Finally, the standard deviation is the square root of the mean squared deviation:
√11 ≈ 3.32
This means you can expect a typical deviation of about 3.32 nuts from the expected value of 1000 nuts per pack. Similarly, in poker, if you have a winrate of +10bb per 100 hands and a SD of 20bb, you can expect results typically to fall between -10bb and +30bb per 100 hands for your next sessions.
Are you a solid winning player and wondering why you need so many Big Blinds to keep the Risk of Ruin lower than 5%? That’s because of your high Standard Deviation, which results from entering sessions with zero-hour durations. Filter out the sessions shorter than 1-hour duration and check your Risk of Ruin again. You need to enter a real session duration to see an accurate variance calculation. If you’ve already entered sessions with zero-hour durations, you need to edit these sessions (long press the session) and enter the correct end time.
Maintaining your bankroll
This section allows you to bulk edit your bankroll entries. You can change location names, for example, to combine sessions at “Aria Vegas” and “Aria Casino Vegas” into one location. There is no location database in PBT. If you add a session with the location “Aria”, you will find this location in the drop-down list when you enter the next session. This drop-down list contains all the locations you have previously entered in one of your sessions. If you want to rename a location or merge two locations, go to Bankroll and swipe to the Maintenance tab. In addition, you can also change the names of games, hide games or locations, as well as find duplicate entries in your bankroll.
You can also edit the starting amount of a bankroll by long pressing the bankroll and selecting Edit.
Hand Replayer
Record a hand
With the hand replayer, you can recreate hands to review them later or discuss them with friends. You can create Hold’em, Omaha, and 5 Card Omaha hands, including single boards, double boards, or bomb pots. Additionally, you can add a third blind or straddles, and choose to deal the turn and river or even the entire board twice.
Analysis Hub
Recorded hands are set to private by default, and only you can view them. If you would like to discuss them with friends, move them to the analysis hub. The hands in the hub can be viewed and commented on by you and your friends, but not by strangers.
Friends
Connections
Here you can search for other players and become friends. Once you are connected to a player, you can view their sessions from the last 7 days. In the Pro version, you can also see the details of these sessions.
Your friend can share a tag with you to show more than just the last 7 days of sessions. You will see all sessions that your friend has marked with a shared tag. Click a friend’s profile picture to view shared tags and sessions.
Account
Pro version
The Pro version is available on an annual subscription basis and is currently priced at €24.99 EUR/year (€2.08 EUR/month). Prices may vary slightly by country. To find the price for your country, open the menu and go to the Pro Version page. Here you will see the price for your country and the detailed benefits that the Pro version offers over the Free version.
The subscription is an annual subscription that renews automatically until you cancel it. The subscription is between you and Apple (iOS AppStore) or you and Google (Android PlayStore). We have no influence on e.g. rejected payment methods. You need to contact Apple/Google directly.
To manage or cancel your subscription, click on “Manage Your Subscription” in the “Pro Version” tab. If you have an Android device but no access to the Google Play Store, you can download the app directly from our website and pay with PayPal.
If you have any trouble with the Pro version, please check also: https://pokerbankrolltracker.net/faq/#why-does-not-the-app-show-my-pro-status
Transfer your data to a new device
Make sure you have at least version 5.0 of the app installed on your old device and that you are logged in to your PBT account. Your data will then be automatically synchronized with our server. To be 101% sure, you can download a CSV backup of your data. Install the PBT app on your new device and log in to your PBT account. Your data will be automatically transferred to your new device.
Delete your data
If you want to delete your data or parts of your data, such as your bankroll or replayer hands, click on delete your data and select the data you want to delete.
API Access
The Poker Bankroll Tracker public API is available exclusively to Pro version users. To access the API, you must include your API key in every request. Your API key can be generated in the Account section of our desktop application.
Recommended Authentication: Bearer Token (Secure)
The preferred method is to send your API key using the Authorization header.
Example (PHP):
<?php
$url = "https://api.pokerbankrolltracker.net/v1/sessions?start=2025-01-01";
$apiKey = "YOUR_API_KEY";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer " . $apiKey
]);
$response = curl_exec($ch);
if ($response === false) {
echo "Curl error: " . curl_error($ch);
} else {
echo $response;
}
curl_close($ch);
- API key is not visible in URLs
- avoids exposure in logs and browser history
- standard method used by most APIs
Alternative: Query Parameter (Not recommended)
You can also pass your API key as a query parameter:
https://api.pokerbankrolltracker.net/v1/sessions?key=YOUR_API_KEY
This method is not recommended because:
- the API key may appear in server logs
- it can be exposed via browser history or referrer headers
Use this method only as a fallback for simple setups or testing.
Request Limits
API usage is limited to 20 requests per 15 minutes. Requests exceeding this limit will be rejected.
Available Filters
You can filter your session data using the following query parameters:
| Parameter | Format / Available values | Description |
| id | Number | The ID of a specific session. |
| start | YYYY-MM-DD | Start date of the requested data range. |
| end | YYYY-MM-DD | End date of the requested data range. |
| type | cashgame, tournament, casinogame, jackpot, costs, payout | Filter sessions by type. Multiple values can be combined using commas. |
| currency | USD, EUR, GBP, … | Filter by currency (ISO currency codes). Multiple values can be combined using commas. |
| staking | true, false | Filter by staking status. |
Example request:
https://api.pokerbankrolltracker.net/v1/sessions?key=YOUR_API_KEY&id=9324655
Example output:
{
"data": [
{
"id": 9324655,
"type": "tournament",
"start": "2025-12-14T16:03:36+02:00",
"end": "2025-12-14T19:39:00+02:00",
"location": "Royal Bluff Pafos",
"location_type": "Club",
"currency": "EUR",
"limit": "No Limit",
"game": "Holdem",
"table_size": "Full-Ring",
"buyin": 150,
"cashout": 0,
"rebuys": 0,
"rebuy_cost": 0,
"expenses": 0,
"addon_cost": 0,
"bounty_won": 0,
"place": 53,
"itm": 5,
"players": 75,
"start_stack": 80000,
"stack_history": [
{
"timestamp": 1765722760,
"change": 10000,
"stack": 90000
},
{
"timestamp": 1765723576,
"change": 14000,
"stack": 94000
},
{
"timestamp": 1765728639,
"change": 1500,
"stack": 81500
},
{
"timestamp": 1765733977,
"change": -80000,
"stack": 0
}
],
"exchange_rate": 1,
"hands_per_hour": 25,
"staking": false,
"private": false
}
],
"meta": {
"timestamp": "2026-04-14T01:14:27+00:00",
"filter": {
"id": "9324655"
}
}
}
| Parameter | Format / Available values | Description |
| id | Number | Session id |
| type | cashgame, tournament, casinogame, jackpot, costs, payout | |
| start | ISO 8601 with offset | |
| end | ISO 8601 with offset | Is null when session is running |
| location | Name of the venue | Not available for type payout |
| location_type | Home Game, Club, Casino, Online | Not available for type payout |
| currency | USD, EUR, GBP, … | |
| limit | No Limit, Pot Limit, Spread Limit, Limit, Mix | cashgame/tournament only |
| game | Text | cashgame/tournament only |
| table_size | Heads-Up, Short-Handed, Full-Ring | cashgame/tournament only |
| small_blind | Number | cashgame/tournament only |
| big_blind | Number | cashgame/tournament only |
| third_blind | Number | cashgame only |
| ante | Number | cashgame/tournament only |
| buyin | Number | cashgame/tournament only |
| cashout | Number | cashgame/tournament only |
| rebuys | Number | cashgame/tournament only |
| rebuy_cost | Number | cashgame/tournament only |
| expenses | Number | cashgame/tournament only |
| expenses_in_chips | Number | cashgame only |
| addon_cost | Number | tournament only |
| bounty_won | Number | tournament only |
| place | Number | Can be used as “players left” during a live session. tournament only |
| itm | Number | tournament only |
| players | Number | tournament only |
| start_stack | Number | tournament only |
| stack_history | Array with objects {“timestamp”: 1755708802, “change”: 2000, “stack”: 32000} | Time series of stack updates during a session. Each entry contains a UTC timestamp, the stack change relative to the start stack, and the resulting total stack. cashgame/tournament only |
| exchange_rate | Number | Exchange rate to users default currency |
| hands_per_hour | Number | cashgame/tournament only |
| staking | true, false | Self played session or staking |
| private | true, false | Visible for friends or private |
Analyze your bankroll with AI
One use case of our public API is to have your session data analyzed by AI. For this purpose, a PBT user has created an MCP server integration and provides it for free on GitHub: https://github.com/0xAndoroid/poker-bankroll-tracker-mcp
If you want to give an AI agent (in our example, Claude) access to your session data, you need:
Follow these steps to set it up:
- Log in to our Desktop App and go to the Account page. Create an API key and copy it.
- Download Node.js and install it.
- Download Claude Desktop, install it and create an account.
- Open the menu in the top left and go to File > Settings > Developer and click on Edit Config.
- Edit the claude_desktop_config.json file in a text editor. Add the mcpServers section and replace “your-api-key-here” with your API key. The edited file should look like this:
{
"mcpServers": {
"poker-bankroll-tracker": {
"command": "npx",
"args": ["-y", "poker-bankroll-tracker-mcp"],
"env": {
"PBT_API_KEY": "your-api-key-here"
}
}
},
"preferences": {
"menuBarEnabled": false,
"coworkScheduledTasksEnabled": false,
"ccdScheduledTasksEnabled": false,
"sidebarMode": "chat",
"coworkWebSearchEnabled": true
}
}
- Save the file and close Claude Desktop (including from the system tray).
- Restart Claude Desktop and ask questions like: “What is my win rate for casino sessions in 2025 compared to home games?”