Loading ticker...
Loading… @TheOddsGap
Tools

The Odds Gap Discord Bot

Your members type /odds, the bot replies with prices across 19 sportsbooks and prediction markets like Kalshi, ranked best to worst, with the opening line shown so everyone sees how far it moved. Free, and it only posts where you tell it to.

Add to Your Server
You need Manage Server permission on your end to add a bot. Two permissions requested: Send Messages and Embed Links. That is the whole list.

Commands Your Members Get

/odds gameStart typing a team, pick the game. Returns moneyline, spread, and total, best price first.Example: /odds game bills
/odds propStart typing a player. Returns the over/under price ladder for that prop.Example: /odds prop judge hr
/odds futurePick a market. Returns the outrights board, favorites first.Example: /odds future nba championship
/odds bestPick any single bet, game side or player prop. Returns a compact top-5 price ladder with the best book bolded, sized to drop right under a pick post.Example: /odds best judge total bases
/odds evToday's +EV plays: prices that beat the de-vigged Pinnacle fair line, the same math behind our public graded record.
/odds dfsPick'em edges: PrizePicks and Underdog lines graded against the real market's de-vigged fair, so you know which side the market favors before you lock an entry.
/odds middlesPlayer-prop middles: an Over at one book and a higher Under at another. Land in the window and both tickets cash; rows marked No-Risk profit either way. Quality-gated so junk pairs never surface.
/odds hedgeEnter a bet you already placed. Returns every hedge price, ranked.
/odds parlayEnter up to 6 legs (games or props). Returns the best book for the whole parlay.
/odds helpQuick how-to.

Autocomplete suggests options as you type, so nobody has to guess spelling. Coverage: NFL, NBA, MLB, NHL, WNBA, college football, UFC, and World Cup soccer.

Setup (About 3 Minutes)

  1. Make a channel for it. Name it #the-odds-gap. The bot lives in one channel only, and locking it there takes two steps after you've added it (step 5 below).

  2. Click the invite link (the gold button above, same link):

    https://discord.com/oauth2/authorize?client_id=1516795639952838857&scope=bot+applications.commands&permissions=18432
  3. Pick your server from the Add to Server dropdown and click Continue. You need Manage Server permission on your end to add a bot.

  4. The approval screen shows two permissions, Send Messages and Embed Links. Leave both checked, click Authorize, and complete the captcha if one appears.

  5. Lock it to your one channel (do this part on desktop; the setting isn't in the mobile app):

    • Go to Server Settings > Integrations, click The Odds Gap bot.
    • Under Channels, toggle All Channels off, then click Add channel and pick your #the-odds-gap channel.
    • Save. Members can now only use the commands in that channel.
    One Discord quirk to know so you don't think it's broken: admins bypass channel restrictions. If you test in another channel yourself, it will still work for YOU, because you're an admin. Regular members are blocked everywhere except your chosen channel. To see it as members do, check with a non-admin account or ask a member to try.

    Want it hard-locked on our side too, so it's enforced for everyone including admins? Send us the channel ID: turn on Developer Mode (User Settings > Advanced > Developer Mode), right-click the channel, Copy Channel ID, and send the number to [email protected] or DM @TheOddsGap.

  6. Test it. Go to your channel, type /odds game, start typing any team, pick a game, hit Enter. You should get prices back in a second or two. If the commands do not show up right away, give Discord a few minutes to sync and try again.

Control What It Shows

You control this yourself with /oddsadmin (anyone with Manage Server permission can run it). It opens a private panel with two menus and a button for each alerts feed:

Commands This Server Shows

Turn game, prop, future, best, ev, dfs, hedge, and parlay on or off individually.

Books to Hide

Pick any books to remove from every reply, so members only see books they can actually bet at. Common example: hiding offshore books like Bovada and BetOnline. Leave it empty to show everything.

Game +EV Alerts, Pick'em Digest

A button each. Every feed has its own channel list, and the list is the switch: put a channel in it and that feed is on, take them all out and it is off. Pick up to five channels per feed. With both lists empty the bot only replies when someone asks.

Changes apply to your server only and save automatically. If you would rather not touch it, tell us which books you want hidden and we set it for you.

Automatic Alerts, and How to Turn Them on

Both alert feeds are off in every server until that server's own admin turns them on. Nothing posts by default, we do not switch anything on for you, and there is no setting we hold that starts a feed in your server. Anyone with the Manage Server permission can do all of it, and it takes about a minute.

  1. Run /oddsadmin in your server. The panel is private, only you see it.

  2. Press the feed you want: Game +EV alerts or Pick'em digest. Each opens its own panel.

  3. Pick its channels, up to five. Picking a channel is what turns the feed on. Deselect a channel to remove it, deselect all of them to turn the feed off again.

  4. Set your numbers in the menus below it.

  5. Press Save. Every change already saved the moment you picked it, and Save reads your setup back in plain words so you leave knowing exactly what is on. Do the other feed the same way, or leave it off.

The two feeds are shaped differently on purpose, because the two boards behave differently.

Game +EV Plays

Posts each new play as it appears, one message each, usually within two minutes of the edge showing up. It is a thin feed most nights, so a message per play is readable.

An hourly cap keeps a busy night from flooding the channel. When a channel hits the cap, the bot posts one line saying how many more cleared your filter, points you at /odds ev for the rest, and goes quiet in that channel until the next hour. The cap is per channel, so sending the feed to two channels gives each one its own allowance rather than splitting one.

Pick'em Digest

One roundup per hour, the top 8 by market fair chance, one line each. In an hour with nothing to say it posts nothing at all.

It is a digest rather than a message per edge because the pick'em board can clear a low bar hundreds of times at once. Sent one at a time it ran past 100 messages in a night, and raising the bar barely dented it. A channel nobody reads is worse than no channel.

The three number menus, in the words they use in Discord:

Game +EV: minimum edge
How far a price has to beat the fair line before it is worth a message. Choose 1%, 2%, 3%, 5% or 7%. Higher means fewer messages and stronger ones. The default when you switch the feed on is 2%.
Game +EV: messages per hour
The cap described above, counted per channel. Choose 5, 10, 20 or no cap. The default is 10. When the hour is used up you get one line telling you how many more cleared, then quiet until the next hour.
Pick'em: minimum market fair
The fair win chance a pick'em line needs before it can make the digest. Choose 57%, 60%, 63% or 66%. The default is 63%. The digest is capped at 8 lines whatever you pick here, so this changes what qualifies, not how long the message gets.

Live tier only. The pushed feeds are the licensed-server perk; the slash commands stay free for everyone. A server that is not licensed can open the panel and set everything, and the panel will say plainly that it needs the live tier. Nothing fires until then. To ask about it, email [email protected] or DM @TheOddsGap.

Turning it back off. Open the feed and remove its channels. A feed with no channels is off. Doing that to both turns everything off, and the main panel says so in plain words either way.

Already set a channel before this changed? It carried over on its own: whatever you had switched on still posts to the same place, and you can now add more channels to it.

Permissions It Asks for, and Why

Send Messages

To reply when someone runs a command.

Embed Links

The odds tables are formatted embeds. Without this they render as broken text.

That is the whole list. No read message history, no message content access, no manage anything. The bot cannot see your members' conversations. It only wakes up when someone runs a slash command.

FAQ

Does it post on its own?
Not unless someone in your server turns it on. Out of the box it strictly replies to slash commands. There are two feeds a Manage Server admin can switch on in /oddsadmin, and both start off: Game +EV plays, which posts each new play as it appears with an hourly cap so a busy night cannot flood the channel, and the Pick'em digest, which posts one roundup an hour and stays silent in an hour with nothing worth sending. Each feed has its own channel list, up to five channels, and an empty list means that feed is off. Licensed servers only.
What counts as a +EV play?
A price that beats the de-vigged Pinnacle fair line by 1.5 points of implied probability or more. It is the same math behind theoddsgap.com/ev and our public record, where every featured play is graded win or loss in the open. Math, not picks.
Does it work for DFS pick'em (PrizePicks, Underdog)?
Yes. /odds dfs grades every PrizePicks and Underdog line against the de-vigged fair probability from the sportsbooks quoting both sides of that exact number. You see which side the real market favors and its fair win chance, next to the 54.6% to 58% breakevens pick'em formats need. The full list lives at theoddsgap.com/dfs.
I post picks. What's the fastest way to show my followers the best price?
/odds best. Type your exact bet, game side or player prop, and the bot posts a compact top-5 ladder with the best book bolded and what an extra few cents of price is worth on a $100 winner. Built to sit right under a pick post without swallowing the channel.
How fresh are the odds?
Two speeds. On free servers, game lines (moneyline, spread, totals) refresh hourly, 7am to 1am ET, player props every 4 hours, and futures once a day. Servers with live beta access get game lines every minute, props every hour for games inside 24 hours (every 4 hours for the day after that), and futures every hour. Every reply shows a "Prices as of" timestamp. EPL, La Liga, Serie A, Bundesliga and Ligue 1 refresh every 5 minutes.
What does it cost?
Nothing. It runs on our infrastructure.
What can't it do?
Live in-game odds, and overnight line moves show up at the 7am scan. It shows prices, not picks.
Where do the links go?
Every link lands on theoddsgap.com for the full board and alt lines. No sportsbook links get posted in your server.
Can it post in more than one channel?
It's built to live in one channel per server. That keeps the odds talk in one place and out of everyone else's way.
Add to Your Server

Questions or problems, email [email protected] or DM @TheOddsGap.