🇩🇪 Germany
· Bundesliga
· Round 25
💰 Betting Odds
Home
1.9
Draw
3.8
Away
3.9
🔥 Home Form
- no_losses3
- more_than_25_goals8/10
- both_teams_scoring7/9
- first_to_concede7/8
- more_than_105_corners5/7
🔥 Away Form
- no_wins4
- without_clean_sheet10
- more_than_25_goals4/5
- first_to_concede9/10
- first_half_loser8/9
- less_than_105_corners8/10
🥇 Head-to-Head
- no_losses4
- less_than_25_goals4/5
- less_than_45_cards5/6
⚽ Home Goal Distribution
{'scored': {'total': 46, 'penalty': 3, 'free_kick': 1, 'header': 6, 'left_foot': 16, 'right_foot': 24, 'inside_box': 40, 'outside_box': 6, 'big_chances': 69, 'big_chances_missed': 43, 'shots': 443, 'shots_on_target': 153, 'corners_won': 157, 'yellow_cards': 66, 'red_cards': 2, 'fouls': 391, 'offsides': 70, 'avg_possession': 48.647058823529, 'pass_accuracy': 80.288040917962, 'matches_played': 34}, 'conceded': {'total': 68, 'penalty': 3, 'clean_sheets': 4, 'shots': 491, 'shots_on_target': 174, 'corners': 189, 'big_chances': 97}}
⚽ Away Goal Distribution
{'scored': {'total': 37, 'penalty': 5, 'free_kick': 1, 'header': 4, 'left_foot': 12, 'right_foot': 21, 'inside_box': 32, 'outside_box': 5, 'big_chances': 61, 'big_chances_missed': 38, 'shots': 403, 'shots_on_target': 132, 'corners_won': 140, 'yellow_cards': 66, 'red_cards': 1, 'fouls': 385, 'offsides': 50, 'avg_possession': 43.235294117647, 'pass_accuracy': 77.672479150872, 'matches_played': 34}, 'conceded': {'total': 64, 'penalty': 6, 'clean_sheets': 9, 'shots': 460, 'shots_on_target': 174, 'corners': 166, 'big_chances': 97}}
⚽ Scorers
[{'name': 'Budu Zivzivadze', 'minute': 65, 'team': 'away', 'type': 'goal'}, {'name': 'Haris Tabaković', 'minute': 34, 'team': 'home', 'type': 'goal'}]
💰 Betting Markets
{'full_time': {'choices': {'1': {'odds': 1.9, 'won': False}, 'X': {'odds': 3.8, 'won': True}, '2': {'odds': 3.9, 'won': False}}}, 'double_chance': {'choices': {'1X': {'odds': 1.25, 'won': True}, 'X2': {'odds': 1.91, 'won': True}, '12': {'odds': 1.25, 'won': False}}}, 'first_half': {'choices': {'1': {'odds': 2.5, 'won': True}, 'X': {'odds': 2.3, 'won': False}, '2': {'odds': 4.33, 'won': False}}}, 'draw_no_bet': {'choices': {'1': {'odds': 1.4, 'won': False}, '2': {'odds': 2.75, 'won': False}}}, 'both_teams_to_score': {'choices': {'yes': {'odds': 1.67, 'won': True}, 'no': {'odds': 2.1, 'won': False}}}, 'corners_2_way': {'line': 2.0, 'over': {'odds': 1.8, 'won': True}, 'under': {'odds': 1.91, 'won': False}}, 'first_team_to_score': {'choices': {'home': {'odds': 1.57, 'won': True}, 'no_goal': {'odds': 13.0, 'won': False}, '1. fc heidenheim': {'odds': 2.5, 'won': None}}}}
📄 Raw Data
{'match_id': '104515', 'match_info': {'country': 'Germany', 'league': 'Bundesliga', 'round': 'Round 25', 'date': '2025-03-10', 'time': '16:30', 'status': 'Finished', 'home_team': 'Tsg Hoffenheim', 'away_team': '1 Fc Heidenheim', 'final_score': '1 - 1', 'half_time_score': '1 - 0', 'scorers': [{'name': 'Budu Zivzivadze', 'minute': 65, 'team': 'away', 'type': 'goal'}, {'name': 'Haris Tabaković', 'minute': 34, 'team': 'home', 'type': 'goal'}]}, 'betting_markets': {'full_time': {'choices': {'1': {'odds': 1.9, 'won': False}, 'X': {'odds': 3.8, 'won': True}, '2': {'odds': 3.9, 'won': False}}}, 'double_chance': {'choices': {'1X': {'odds': 1.25, 'won': True}, 'X2': {'odds': 1.91, 'won': True}, '12': {'odds': 1.25, 'won': False}}}, 'first_half': {'choices': {'1': {'odds': 2.5, 'won': True}, 'X': {'odds': 2.3, 'won': False}, '2': {'odds': 4.33, 'won': False}}}, 'draw_no_bet': {'choices': {'1': {'odds': 1.4, 'won': False}, '2': {'odds': 2.75, 'won': False}}}, 'both_teams_to_score': {'choices': {'yes': {'odds': 1.67, 'won': True}, 'no': {'odds': 2.1, 'won': False}}}, 'corners_2_way': {'line': 2.0, 'over': {'odds': 1.8, 'won': True}, 'under': {'odds': 1.91, 'won': False}}, 'first_team_to_score': {'choices': {'home': {'odds': 1.57, 'won': True}, 'no_goal': {'odds': 13.0, 'won': False}, '1. fc heidenheim': {'odds': 2.5, 'won': None}}}}, 'streaks': {'home_team': {'no_losses': '3', 'more_than_25_goals': '8/10', 'both_teams_scoring': '7/9', 'first_to_concede': '7/8', 'more_than_105_corners': '5/7'}, 'away_team': {'no_wins': '4', 'without_clean_sheet': '10', 'more_than_25_goals': '4/5', 'first_to_concede': '9/10', 'first_half_loser': '8/9', 'less_than_105_corners': '8/10'}, 'h2h': {'no_losses': '4', 'less_than_25_goals': '4/5', 'less_than_45_cards': '5/6'}}, 'goal_distribution': {'home_team': {'scored': {'total': 46, 'penalty': 3, 'free_kick': 1, 'header': 6, 'left_foot': 16, 'right_foot': 24, 'inside_box': 40, 'outside_box': 6, 'big_chances': 69, 'big_chances_missed': 43, 'shots': 443, 'shots_on_target': 153, 'corners_won': 157, 'yellow_cards': 66, 'red_cards': 2, 'fouls': 391, 'offsides': 70, 'avg_possession': 48.647058823529, 'pass_accuracy': 80.288040917962, 'matches_played': 34}, 'conceded': {'total': 68, 'penalty': 3, 'clean_sheets': 4, 'shots': 491, 'shots_on_target': 174, 'corners': 189, 'big_chances': 97}}, 'away_team': {'scored': {'total': 37, 'penalty': 5, 'free_kick': 1, 'header': 4, 'left_foot': 12, 'right_foot': 21, 'inside_box': 32, 'outside_box': 5, 'big_chances': 61, 'big_chances_missed': 38, 'shots': 403, 'shots_on_target': 132, 'corners_won': 140, 'yellow_cards': 66, 'red_cards': 1, 'fouls': 385, 'offsides': 50, 'avg_possession': 43.235294117647, 'pass_accuracy': 77.672479150872, 'matches_played': 34}, 'conceded': {'total': 64, 'penalty': 6, 'clean_sheets': 9, 'shots': 460, 'shots_on_target': 174, 'corners': 166, 'big_chances': 97}}}, 'h2h_history': [{'date': '2026-03-07', 'score': '2-4', 'home': '1 Fc Heidenheim', 'away': 'Tsg Hoffenheim', 'competition': 'Bundesliga'}, {'date': '2025-10-25', 'score': '3-1', 'home': 'Tsg Hoffenheim', 'away': '1 Fc Heidenheim', 'competition': 'Bundesliga'}, {'date': '2025-03-09', 'score': '1-1', 'home': 'Tsg Hoffenheim', 'away': '1 Fc Heidenheim', 'competition': 'Bundesliga'}, {'date': '2024-10-27', 'score': '0-0', 'home': '1 Fc Heidenheim', 'away': 'Tsg Hoffenheim', 'competition': 'Bundesliga'}, {'date': '2024-01-27', 'score': '1-1', 'home': 'Tsg Hoffenheim', 'away': '1 Fc Heidenheim', 'competition': 'Bundesliga'}]}