Why xG Is the Edge Filipino Bettors Need in 2026/27
If you're still picking teams based on league position or the last five results, you're donating to the bookmakers. Expected goals (xG) measures the quality of chances a team creates and concedes. It's the closest thing to a crystal ball in football betting. And the best part? You can get it for free.
Here in the Philippines, sportsbooks like MegaSports (licensed by PAGCOR under 23-001) and PinoyBet (license 23-004) offer markets on the English Premier League, La Liga, Serie A, and even the UEFA Champions League. But their odds are set by algorithms that already factor in xG. To beat them, you need your own model.
This guide walks you through building a simple yet effective football model using free xG data from sources like FBref and Understat. No expensive subscriptions. No PhD in statistics. Just a laptop, a spreadsheet, and a few hours a week. By the end, you'll be able to identify value bets that the average punter misses.
Step 1: Gather Free xG Data (The Right Way)
Your model is only as good as your data. Start with these three free sources:
- FBref.com – Provides xG for most major leagues, including the A-League, J-League, and even the Philippines Football League (PFL). Data is updated within 24 hours of matches.
- Understat.com – Covers the top five European leagues with detailed shot-level xG. You can download CSV files for each team and season.
- FootyStats.org – Offers free xG for over 500 leagues, including the AFC Champions League and Southeast Asian competitions.
For the 2026/27 season, I recommend focusing on the English Premier League and La Liga. Why? Because the liquidity is high, the data is reliable, and local sportsbooks like MegaSports post odds early. You'll need at least 10 matches per team to get a stable xG average. If a team has played fewer, wait until matchday 12.
Download the data into a Google Sheet or Excel. You'll want columns for: Date, Home Team, Away Team, Home xG, Away xG, Home Goals, Away Goals. This is your raw database.
Pro tip: Use the 'ImportHTML' function in Google Sheets to auto-pull tables from FBref. It updates every time you open the sheet.
Step 2: Calculate Attack and Defence Ratings
Now you need to turn raw xG into team strengths. The simplest method is the Poisson distribution, which models the probability of a team scoring a certain number of goals. But first, calculate two key metrics for each team:
- Attack Strength = (Team's xG per home game) / (League average xG per home game)
- Defence Strength = (Team's xGA per away game) / (League average xGA per away game)
For example, if Manchester City averages 2.4 xG at home and the league average is 1.5, their attack strength is 1.60. If they concede 0.8 xGA away and the league average is 1.2, their defence strength is 0.67 (lower is better).
Do this for every team. Then, to predict a match, multiply the home team's attack strength by the away team's defence strength, and multiply that by the league average home xG. That gives you the expected goals for the home side. Repeat for the away team using away xG averages.
This is the core of your model. It's not perfect, but it's far better than gut feel. And it only takes about 20 minutes to set up in a spreadsheet.
Step 3: Convert Probabilities to Odds and Find Value
Once you have expected goals for both teams, use a Poisson calculator (free online) to get the probability of each outcome: home win, draw, away win, over/under 2.5 goals, both teams to score. For instance, if your model gives a 55% chance of a home win, the fair odds are 1 / 0.55 = 1.82.
Now compare with the bookmaker's odds. If MegaSports offers 2.10 for that home win, you have a value bet. The expected value (EV) is (0.55 * 2.10) - 1 = 0.155, or a 15.5% edge. That's massive. In reality, a 3-5% edge is enough to profit long-term.
But don't bet every value bet. Focus on leagues and markets where you have the most data. The English Premier League and La Liga are the safest. Avoid the PFL—the sample sizes are too small and the odds are often mispriced due to low liquidity.
Also, check the bookmaker's margin. PinoyBet typically has a 5-6% overround on 1X2 markets, while MegaSports is around 4-5%. The lower the margin, the easier it is to find value.
Step 4: Bankroll Management and Staking Plans
Even the best model loses sometimes. That's why you need a staking plan. I recommend the Kelly Criterion, but fractional Kelly (25-50%) to reduce variance. Here's how it works:
Kelly fraction = (BP - Q) / B, where B is the decimal odds minus 1, P is your estimated probability, and Q is 1 - P. So if you have a 55% chance at odds of 2.10, B = 1.10, P = 0.55, Q = 0.45. Kelly = (1.10 * 0.55 - 0.45) / 1.10 = 0.155. That's 15.5% of your bankroll. Way too high. Use 25% of that: 3.875%.
For a ₱10,000 bankroll, that's a ₱388 bet. If you're just starting, use a flat 1-2% stake until you've tracked 100 bets and know your model's true edge.
Set a stop-loss: if you lose 20% of your bankroll in a month, stop and review your model. Don't chase losses. And always withdraw a portion of your profits. MegaSports processes withdrawals in 2-4 hours via GCash, while PinoyBet takes 6-12 hours for bank transfers. There's no reason to leave your entire bankroll in the sportsbook.
Finally, track everything. Use a simple spreadsheet: date, match, market, odds, stake, result, profit. After 200 bets, you'll know if your model is profitable.