Google Sheets is the most flexible bet tracking tool available, and it's free. The only thing standing between you and a fully functional Google Sheets bet tracker is the initial setup. This guide covers everything: columns, formulas, filter views, and the habit that makes it work long-term.

If you just want the finished product without building it yourself, skip to the bottom. But if you want to understand how it works — and how to customise it for your own analysis — start here.

Step 1: Set Up Your Columns

Open a new Google Sheet. In row 1, create these headers in order across columns A through J:

Tip: Freeze row 1 so your headers stay visible as you scroll down. Go to View > Freeze > 1 row.

Step 2: Set Up the P&L Formula

Click cell I2. Paste this formula:

=IF(H2="W", IF(F2>0, G2*(F2/100), G2*(-100/F2)), IF(H2="L", -G2, 0))

Here's what it does:

Once you have the formula in I2, drag it down the entire column to apply it to all rows. In Google Sheets, click the blue dot at the bottom-right of I2 and drag, or double-click it to auto-fill.

Worked example: You bet $100 on a team at -120. They win. The formula calculates $100 × (100 ÷ 120) = $83.33 profit. You bet $75 on a +200 underdog. They win. Formula: $75 × (200 ÷ 100) = $150 profit. They lose: -$75.

Step 3: Add Running Totals and ROI

At the top of your sheet — say in cells L1 through M4 — add a summary block:

The ROI formula divides your total net profit by your total amount staked, then multiplies by 100 to give a percentage. This is the most important number on your sheet. A positive number means you're making money. See our full guide to calculating betting ROI for how to interpret different ROI levels.

Format M4 to show two decimal places: Format > Number > Custom number format > 0.00"%".

Step 4: Create Filter Views by Sport and Sportsbook

This is where the spreadsheet starts earning its keep. Filter views let you instantly slice your data without disrupting the underlying sheet.

To create a filter view:

  1. Click Data in the menu bar.
  2. Select Filter views > Create new filter view.
  3. A grey bar appears at the top — give the view a name (e.g., "NFL only").
  4. Click the filter icon in the column you want to filter. For Sport (column B), uncheck everything except "NFL".
  5. Close the filter view. It's now saved.

Repeat this for each sport you want to analyse separately, each sportsbook, and each bet type (Market column). You can also create a "Pending bets" view by filtering the Result column to "Pending" — this becomes your daily checklist of unsettled bets.

To switch between views, go to Data > Filter views and select the one you want. To return to the full sheet, select Data > Filter views > None.

Step 5: Keep It Updated — The Habit Is the Hard Part

The spreadsheet is only as good as the data in it. A partially-filled sheet is worse than no sheet at all — it'll show you misleading ROI numbers that don't represent your actual performance.

The habit breaks down at the entry step. You place a bet, don't log it immediately, mean to log it later, and later never comes. Three weeks in, you're six bets behind and the data is dirty.

Two practical tips to maintain the habit:

Every unsettled bet is noise in your data. Clean data produces clean insights. Dirty data produces false confidence.

Alternative: Skip the Setup Entirely

If the setup above feels like work — it is. There's a faster path.

S2S Bets creates and populates your Google Sheet automatically. Screenshot your bet slip from any sportsbook, and the app reads the bet details and writes the row. Date, sport, book, selection, market, odds, stake — all parsed and logged without typing a single character.

It works with every sportsbook, including offshore books like Bovada and BetOnline that don't have API integrations. Because S2S Bets reads screenshots rather than connecting to sportsbook accounts, there's nothing to link and no limitations on which books are supported.

You get the full flexibility of a Google Sheets bet tracker — all your formulas, your filter views, your custom columns — without the 2-3 minutes of manual entry per bet that kills the habit.

Stop Typing. Start Screenshotting.

S2S Bets logs every bet from your screenshot — directly into your spreadsheet.

Join the Free Beta →

No credit card. Works with all sportsbooks including offshore.

Frequently Asked Questions