
ChatGPT can build you a betting model that looks right in ten minutes. What it gets wrong is the betting part. It measures your edge against the wrong price, fills the sheet with stats it cannot check, finds value in almost every game, gives a different number each time you ask, and adds factors nobody has tested. Every one of these can be fixed. Use ChatGPT to write formulas and explain errors, and keep three things in your own hands: the data, the price check, and the rule for when to bet.
I build simple probability models in Google Sheets, and ChatGPT is a good helper for that work. It is a bad replacement for it.
Below are the five mistakes, with the numbers, and the fix for each one.
Why does ChatGPT measure your edge against the wrong price?
Because it compares your probability to the fair price, and you never get the fair price. You get the price on the screen.
A typical AI-built sheet removes the bookmaker's margin first, which is the right start. Then it compares your number to that fair price and calls the gap your edge. That last step is the mistake.
Here is an example. Your model gives Team A a 55% chance to win. The book has:
- Team A at -125 (1.80 in decimal odds)
- Team B at +105 (2.05)
Those prices imply 55.56% and 48.78%. Together that is 104.34%, so the book's margin is 4.34%. Remove it and the fair price for Team A is 53.25%, or -114 (1.878).
A sheet that compares your 55% to the fair 53.25% sees a 1.75-point edge and tells you to bet. Now check it against the price you can actually take:
EV = 0.55 × 1.80 - 1 = -0.01, or -1.0%
At -125 (1.80) you need 55.56% just to break even. Your 55% is short of that. This is not value. It is a small loss you would repeat every time the sheet flags it.
The fix: measure expected value against the odds you can bet, with one formula: probability × decimal odds - 1. Positive means value. Use the fair price to understand the market, never to measure your own edge. The bookmaker margin lesson shows how the margin hides inside a price, and the expected value lesson lets you test the formula with your own numbers.
Can ChatGPT find the stats your model needs?
Not reliably. A chat window can hand you numbers that look right but come from an old season, use a different definition, or are simply made up. It says all three with the same confidence. Feed a model wrong numbers and you get wrong prices from perfect formulas.
The stats that matter also tend to live in one place. My MLB model runs on SIERA and wRC+ from FanGraphs. You will not get those clean and current from a chat, and most general sports data feeds do not carry them either.
The fix: collect the data yourself, from the source, and paste it into one tab called Data. Ask ChatGPT only to write the formulas that read from that tab. If a number in your sheet did not come from a page you can open and check, delete it.
Why does an AI-built model find value in almost every game?
Because nobody told it how big a gap has to be before it counts. Every model has error. A sheet that flags every difference between your number and the market's will flag most games, and most of those flags are noise.
A real market is hard to beat on most games. I once priced one MLB game, St. Louis against Toronto, against Pinnacle's line as the reference: 2.27 (+127) and 1.71 (-141). With the 2.53% margin removed, the fair odds were 2.327 (+133) and 1.753 (-133).
Then I checked every European and US book I could find. The best prices were 2.27 (+127) on St. Louis and 1.74 (-135) on Toronto. Neither side beat fair. The expected value was -2.47% on one side and -0.76% on the other. The honest answer for that game was pass.
A model that says "bet" on most of the slate is not finding more value than the market. It is finding its own error.
The fix: write a minimum gap into the sheet before you look at the games. My NFL sheet flags a game only when its number and the line are 7 points or more apart. In probability terms, pick a minimum expected value you need before a bet counts, and stick to it. Most games will be a pass, and that is the model working.
Why does ChatGPT give you a different probability every time you ask?
Because a language model does not calculate the way a spreadsheet does. It writes the most likely answer, and that answer changes a little each time. Ask twice for the chance a team wins and you can get, for example, 58% the first time and 54% the second.
On a -110 bet (1.909), where you need 52.38% to break even, that difference is the whole decision.
The fix: never let the chat be the model. The model lives in the sheet, as formulas. Same inputs, same output, every time. That is also the only way to test it later, because you cannot backtest a conversation.
Does adding more factors make a betting model better?
Usually not. Ask for a "complete" model and ChatGPT will gladly give you twelve factors with weights like 0.15 for recent form, 0.10 for rest and 0.08 for motivation. Those weights come from nowhere. Nobody tested them on past games. Twelve untested guesses stacked together make a sheet that looks serious and is impossible to check.
My own models are simple: mostly averages, then a home and away adjustment, which turns into a probability. Simple enough that I can explain every number in them. My NFL model, built that way, has gone 146-112 (56.59%) over the last five seasons.
The fix: start with two or three inputs you understand. Add a new factor only after you test it on past games and it improves the results over a sample large enough to mean something. The sample size lesson shows how many bets that takes, and it is more than most people expect.
How should you use ChatGPT to build a betting model?
As a helper that writes formulas, not as the one who makes decisions. It is good at:
- Writing and fixing Google Sheets formulas, like lookups or NORM.DIST
- Explaining what a formula does, line by line
- Converting odds between American and decimal
- Finding why a cell shows an error
- Checking your arithmetic when you paste in the numbers
Keep these four things for yourself:
- Where the data comes from
- The expected value check against the price you can bet
- The minimum gap before you bet
- Tracking every bet against the closing line, which the closing line value lesson explains
The prompt matters too. "Build me a betting model" invites the five mistakes above. A narrow request works much better:
I have a Google Sheet with a tab called Data. Column A is the team, column B is points scored per game, column C is points allowed per game. Write a formula for the projected home score: the home team's points scored plus the away team's points allowed, divided by 2, plus 1 point for home field. Do not add any stats, factors or weights I did not give you.
If you want the full build step by step, How to Build a Simple NFL Betting Model in Google Sheets walks through it from a blank sheet. If you would rather have a tool do the research for you, the AI Betting Assistant works from market odds with the bookmaker's margin removed, estimates the probability, and returns a clear VALUE or PASS on your exact price.
FAQ
Can ChatGPT build a profitable betting model?
It can build the structure, but it cannot make it profitable on its own. Profit comes from three things a chat cannot give you: correct data, a fair comparison against the price you can actually bet, and the discipline to pass on most games. ChatGPT can write every formula in a good model. It cannot check that the inputs are true, and it will not stop you from betting a gap that is only noise. Treat it as a fast assistant for the spreadsheet work and keep the decisions yourself. A simple model you understand, fed with data you collected, is a better start than a complex one you cannot explain.
Is it safe to use the stats ChatGPT gives me?
No, not without checking every number at the source. A language model can mix seasons, use a different definition of a stat, or produce a number that looks real and is not. It gives you no warning when that happens. For a betting model this matters more than almost anything else, because one wrong input changes every price the sheet produces. Copy your stats from the site that publishes them, paste them into your own Data tab, and let ChatGPT write only the formulas that use them. If you cannot open the page a number came from, do not use it.
How do I calculate expected value in Google Sheets?
Multiply your probability by the decimal odds and subtract 1. If your model gives a team 55% and the price is +105 (2.05), the formula is =0.55*2.05-1, which returns 0.1275, or +12.75%. At -125 (1.80), the same 55% gives =0.55*1.80-1, which is -1.0%. Always use the decimal odds you can actually bet, not the fair odds with the margin removed. To convert American odds to decimal: for plus odds, divide by 100 and add 1. For minus odds, divide 100 by the number without the minus sign and add 1.
How much should I stake on a bet my model likes?
Less than full Kelly, whatever ChatGPT suggests. The Kelly formula gives the stake that grows a bankroll fastest if your probability is exactly right. Your probability is never exactly right. At 55% on an even-money bet, +100 (2.00), full Kelly says to stake 10% of your bankroll on one game. A small error in your 55% turns that into a large overbet. Most bettors who use Kelly use a fraction of it, such as a quarter, which here would be 2.5%. The Kelly criterion lesson on the site lets you see how fast a full Kelly bankroll swings.
Can ChatGPT see today's odds and injury news?
Sometimes, when it searches the web, but you should not rely on it for either. Odds move all day, and a price that was right an hour ago may be gone. Injury news can be partial or out of date by the time it reaches a chat. Take the odds from the sportsbook where you will actually bet, at the moment you bet. Check news on the games your model flags, from a source you can open. Your model should only ever see prices you could have taken.
How do I know if my AI-built model actually works?
Track every bet it flags, with the price you took and the closing price, and judge it on closing line value before win rate. Win rate over a few dozen bets tells you very little, because luck is bigger than skill over a short run. If the line keeps moving toward your number after you bet, the model is finding real value. If you keep getting worse prices than the close, it is not, however good the results look. Give it a few hundred bets before you trust the win rate.
If you would rather start from a finished sheet than build your own, my models are on the models page. If you want to see how odds, margin and value work by moving the numbers yourself, the interactive lessons do exactly that.
Where to start if you want a model of your own
The fixes above are the core of every model I build: your own number, a fair comparison to the price, and a rule for when to bet. If you want to be walked through your first model, from a blank sheet to a number of your own, that is what The Ultimate Modern Bettor's Toolkit is for.
$27, one payment. It includes the +EV betting model spreadsheet, a 45-minute video training that builds your first model with you, and the four-bucket staking system. 30-day money-back guarantee.
MB built Underdog Chance around one idea: make your own number first, then bet only when the price beats it. Over the last 20+ years his simple, probability-based Google Sheets models have helped thousands of bettors stop following picks and start pricing bets for themselves.
Last updated: 14 October 2026
