OddsPortal.com Scraper | 1$/1k Cheap avatar

OddsPortal.com Scraper | 1$/1k Cheap

Pricing

from $1.00 / 1,000 results

Go to Apify Store
OddsPortal.com Scraper | 1$/1k Cheap

OddsPortal.com Scraper | 1$/1k Cheap

Scrape match listings and bookmaker odds from OddsPortal.com across every sport and league. Get average and maximum 1X2 / Home-Away odds, or full per-bookmaker markets (Asian Handicap, Over/Under) with opening odds — in any odds format.

Pricing

from $1.00 / 1,000 results

Rating

0.0

(0)

Developer

Paweł

Paweł

Maintained by Community

Actor stats

0

Bookmarked

5

Total users

3

Monthly active users

8 days ago

Last modified

Share

🎯 OddsPortal.com Scraper

🎯 Pull match listings and bookmaker odds from OddsPortal.com — for any sport, any league, in any odds format.

This scraper turns any OddsPortal league or match page into clean, structured data: teams, dates, results, and odds. Get quick average and maximum win/draw/loss odds for a whole league in one go, or dig into full per-bookmaker markets — 1X2, Asian Handicap, Over/Under — complete with opening odds.

🚀 What Does It Do?

This scraper automatically reads a league, tournament, or match page on OddsPortal and collects structured, ready-to-use odds data — no manual browsing, no copy-pasting. Just paste a URL and hit Start.

💡 Two modes of operation:

  1. ⚡ Main Odds Mode — Fast and cheap. One pass over a league returns every match with its average and maximum 1X2 (or Home/Away) odds across all bookmakers.
  2. 📊 Full Odds Mode — Deep dive. Each match is enriched with full per-bookmaker markets (1X2, Over/Under, Asian Handicap, and more), including each bookmaker's opening odds.

👥 Who Is This For?

🏢 Use Case💬 How It Helps
📈 Odds analysts & tradersTrack price movements and compare bookmaker margins across whole leagues
🤖 Betting model buildersFeed clean historical and live odds into prediction models and backtests
🔎 Arbitrage & value huntersSpot the highest available odds and divergence between bookmakers instantly
📰 Sports media & tipstersSurface market favourites and odds shifts for content and previews
🧮 Data teams & researchersBuild odds datasets across sports without maintaining fragile scrapers

✨ Features

  • 🌍 Every Sport & League — Football, tennis, basketball, hockey and more — anything OddsPortal covers
  • Whole-League in One Pass — Average and maximum win/draw/loss odds for every match at once
  • 📊 Full Per-Bookmaker Markets — Drill into 1X2, Over/Under, Asian Handicap and other markets bookmaker by bookmaker
  • 🕗 Opening vs Current Odds — See how each price moved from open to now
  • 💱 Six Odds Formats — Decimal, Fractional, Money Line (American), Hong Kong, Malay, Indonesian
  • 🏁 Upcoming & Finished — Scrape scheduled fixtures, finished results, or both
  • 🎛️ Smart Filters — Pick markets, market scope (full time / 1st half / 2nd half), and a max-matches cap
  • 🔗 Direct URLs — Drop in league pages, results pages, or individual match links
  • Fast & Scalable — Reads odds straight from the source feeds; hundreds of matches per run
  • 🧹 Deduplication — Each match appears once, even across overlapping pages
  • 📤 Export Anywhere — Download results as JSON, CSV, Excel, or push to Google Sheets, Zapier, Make, or your CRM

🎛️ Filters & Options

OptionWhat It Does
🔗 League / Match URLsThe OddsPortal league, tournament, results, or match pages to scrape
📊 Full OddsSwitch on full per-bookmaker markets with opening odds (off = fast main odds only)
💱 Odds FormatDecimal, Fractional, Money Line, Hong Kong, Malay or Indonesian
🏷️ MarketsWhich markets to collect in full mode (Over/Under, Asian Handicap, Double Chance, …, or All)
⏱️ Market ScopeFull Time, 1st Half, 2nd Half, or All
🕗 Include Opening OddsAdd each bookmaker's opening price alongside the current one
🏁 Include FinishedKeep finished matches, or limit to upcoming fixtures only
🔢 Max MatchesControl how many matches to extract per run

📦 What You Get (Output Fields)

Every match includes:

Match Info

FieldExample
matchUrlhttps://www.oddsportal.com/football/england/premier-league/arsenal-coventry-2q2NhX43/
matchId10852491
sportfootball
countryEngland
leaguePremier League
homeArsenal
awayCoventry
date2026-08-21T19:00:00.000Z
matchTime19:00
statusScheduled
isFinishedfalse

Result (finished matches)

FieldExample
score2:1
homeResult2
awayResult1
partialResult1:0, 1:1

Main Odds

FieldExample
homeWinOdds1.16
drawOdds7.08
awayWinOdds15.6
homeWinOddsMax1.18
drawOddsMax8.5
awayWinOddsMax18
bookmakerCount5
oddsFormatDecimal

Full Markets (full odds mode)

FieldExample
markets[ { market, scope, handicap, outcomes, bookmakers[] }, … ]
marketCount27

📊 Example Output

{
"matchUrl": "https://www.oddsportal.com/football/h2h/arsenal-hA1Zm19f/coventry-GOvB22xg/",
"matchId": 10852491,
"eventHash": "2q2NhX43",
"sport": "football",
"country": "England",
"league": "Premier League",
"home": "Arsenal",
"away": "Coventry",
"date": "2026-08-21T19:00:00.000Z",
"matchTime": "19:00",
"status": "Scheduled",
"isFinished": false,
"homeResult": null,
"awayResult": null,
"partialResult": null,
"homeWinOdds": 1.16,
"drawOdds": 7.08,
"awayWinOdds": 15.6,
"homeWinOddsMax": 1.18,
"drawOddsMax": 8.5,
"awayWinOddsMax": 18,
"bookmakerCount": 5,
"markets": [
{
"market": "Over/Under",
"scope": "Full Time",
"handicap": "3.50",
"unit": "Goals",
"outcomes": ["over", "under"],
"bookmakers": [
{
"bookmaker": "bet365",
"bookmakerId": 16,
"over": 2.33,
"overOpening": 2.24,
"under": 1.51,
"underOpening": 1.55
},
{
"bookmaker": "Pinnacle",
"bookmakerId": 18,
"over": 2.4,
"overOpening": 2.3,
"under": 1.54,
"underOpening": 1.58
}
]
}
],
"marketCount": 27,
"oddsFormat": "Decimal",
"scrapedAt": "2026-06-22T10:00:00.000Z"
}

📋 Dataset Views

The Apify Console gives you 3 ready-made table views to quickly browse your results:

ViewWhat It Shows
📊 OverviewTeams, league, date, and the average win/draw/loss odds
🎯 OddsAverage and maximum odds side by side, with bookmaker count
📋 Full DetailsEvery single field, including full per-bookmaker markets

❓ FAQ

🤔 Which sports and leagues are supported? All of them. If OddsPortal has a page for it — football, tennis, basketball, hockey, baseball, esports — you can scrape it. Just paste the league or match URL.

🤔 What's the difference between Main Odds and Full Odds mode? Main Odds mode is fast and returns the average and maximum win/draw/loss odds for every match in a league. Full Odds mode additionally opens each match and pulls every bookmaker's prices for markets like Over/Under and Asian Handicap, plus opening odds.

🤔 Can I get odds in American (Money Line) or fractional format? Yes — choose from Decimal, Fractional, Money Line, Hong Kong, Malay or Indonesian. All odds in the output are converted to your chosen format.

🤔 Can I scrape a single match instead of a whole league? Absolutely. Paste an individual match (h2h) URL and you'll get that match only — with full odds if you enable Full Odds mode.

🤔 Can I get odds for finished matches? Yes. The most reliable way is to paste the finished match's direct URL — you'll get its closing and opening odds for every market. League results pages are supported too; for best coverage of historical seasons, pick a proxy region where OddsPortal serves the bookmakers you need.

🤔 Can I export the data? Yes — JSON, CSV, Excel, XML, HTML, RSS. You can also push data directly to Google Sheets, Zapier, Make, or any webhook/API endpoint.

🤔 How often should I run this? For fresh odds, run before kickoff or on a schedule. You can schedule automatic runs on Apify with just a few clicks — great for tracking how prices move.

🤔 Does it work with proxies? Yes — residential proxies are recommended for the best results. The scraper works with Apify's built-in proxy service.

🛠️ Need Custom Filters or Features?

I'm happy to customize this scraper for your specific needs! 🤝

Whether you need:

  • 🎯 Additional filters (specific bookmakers only, specific markets like Correct Score or HT/FT, minimum bookmaker count)
  • 📊 Extra data fields or custom output formats (one row per bookmaker, odds movement history)
  • 🔄 Integration with your CRM, Google Sheets, or database
  • ⏰ Scheduled scraping that tracks odds movement over time
  • 🌐 Scraping from other odds-comparison platforms alongside OddsPortal

👉 Don't hesitate to reach out via private message — I respond quickly and I'm always open to building exactly what you need. No request is too small or too specific!

This scraper collects only publicly available information from OddsPortal.com. It does not access private data, bypass authentication, or place any bets. Please use the data responsibly and in compliance with applicable laws and platform terms of service.