Statistics / Football / Croatia. HNL / Dinamo Zagreb vs NK Lokomotiva Zagreb

Dinamo Zagreb vs NK Lokomotiva Zagreb Statistics & Analysis

May 23, 2026 - 16:45
0 2.61
0 0.62
xG Accuracy: 41%
Laman pertaruhan premium 1xBet: pengguna baharu boleh guna kod promo 1x_3342271. Daftar sekarang

Tracked markets vs full-time result

Each row compares the model’s highlighted side (or lean) to what happened at full time.

  • Market Prediction Result Outcome
  • Over / Under 2.5 Under 2.5 Under 2.5 (0 goals) ✔ Correct
  • Both Teams To Score BTTS No No ✔ Correct
  • 1X2 Dinamo Zagreb Draw ✖ Incorrect
  • Correct Score Insights 2-0, 3-0, 1-0, 2-1, 4-0 0-0 ✖ Incorrect

AI briefing is not available yet for this match. Run “Batch generate odds” again after upgrading the server to generate the summary.

View technical JSON
{
  "bundle_version": 1,
  "content_hash": "3803233b95912dd0f18cdd60b2924453a4d76c1fd7c66b687ec4b08a2221fb97",
  "decision_algo_version": "2.1.0",
  "facts": {
    "ai_fp": {
      "away_predicted_xg": 0.62,
      "away_win_prob": 0.0575,
      "btts_no_prob": 0.564,
      "btts_yes_prob": 0.436,
      "dc_rho": -0.13,
      "draw_prob": 0.1513,
      "fair_odds_away": 17.39,
      "fair_odds_draw": 6.61,
      "fair_odds_home": 1.26,
      "home_predicted_xg": 2.61,
      "home_win_prob": 0.7912,
      "over_25_prob": 0.626,
      "prediction_confidence": "high",
      "under_25_prob": 0.374
    },
    "api_prediction": {
      "advice": "Winner : Dinamo Zagreb",
      "main_pick_display": "Winner : Dinamo Zagreb",
      "percent_away": "0%",
      "percent_draw": "50%",
      "percent_home": "50%",
      "winner_name": "Dinamo Zagreb"
    },
    "away_xg": 0.62,
    "betting_insight": {
      "bet_label": "Dinamo Zagreb",
      "confidence": 79.2,
      "main_pick_meta": {
        "confidence": "medium",
        "display_text": "Winner : Dinamo Zagreb",
        "edge": 0.0742,
        "edge_gap": 0.6408,
        "market": "1X2",
        "market_prob": 0.7175,
        "model_prob": 0.7917,
        "pick_type": "winner",
        "probabilities": {
          "away": 5.7,
          "draw": 15.1,
          "home": 79.2
        },
        "reason": "",
        "selection": "home",
        "selection_name": "Dinamo Zagreb"
      },
      "market_comparison": [
        {
          "affi_link": "",
          "bookmaker_name": "Pinnacle",
          "odd": 1.29
        }
      ],
      "risk_color": "#ff9800",
      "risk_key": "medium_risk",
      "stacked_market": null,
      "value_bet": {
        "best_odds": 1.29,
        "bookmaker_id": 0,
        "bookmaker_name": "Pinnacle",
        "display_market": "Dinamo Zagreb Win",
        "is_value": false,
        "label": "Home",
        "market_fair_odds": 1.39,
        "market_odds": 1.29,
        "model_odds": 1.26,
        "overround": 8.0,
        "prob_edge": 1.8,
        "value_pct": 2.4,
        "value_rating": "no_value"
      }
    },
    "betting_markets": {
      "btts": {
        "away_clean_sheet": 6,
        "away_failed_to_score": 7,
        "away_played": 35,
        "away_score_rate": 46.2,
        "home_clean_sheet": 15,
        "home_failed_to_score": 2,
        "home_played": 35,
        "home_score_rate": 92.6,
        "no_prob": 56.4,
        "pick": "No",
        "pick_prob": 56.4,
        "source": "xG_dc",
        "strong_pick": true,
        "yes_prob": 43.6
      },
      "correct_score": {
        "away_expected": 0.62,
        "home_expected": 2.61,
        "scores": [
          {
            "away": 0,
            "home": 2,
            "label": "2-0",
            "prob": 13.5
          },
          {
            "away": 0,
            "home": 3,
            "label": "3-0",
            "prob": 11.7
          },
          {
            "away": 0,
            "home": 1,
            "label": "1-0",
            "prob": 10.3
          },
          {
            "away": 1,
            "home": 2,
            "label": "2-1",
            "prob": 8.4
          },
          {
            "away": 0,
            "home": 4,
            "label": "4-0",
            "prob": 7.6
          }
        ],
        "source": "xG"
      },
      "double_chance": {
        "options": [
          {
            "key": "1X",
            "label": "Dinamo Zagreb or Draw",
            "prob": 94.2
          },
          {
            "key": "12",
            "label": "Dinamo Zagreb or NK Lokomotiva Zagreb",
            "prob": 84.9
          },
          {
            "key": "X2",
            "label": "Draw or NK Lokomotiva Zagreb",
            "prob": 20.9
          }
        ],
        "pick_key": "1X",
        "pick_label": "Dinamo Zagreb or Draw",
        "pick_prob": 94.2
      },
      "match_winner": {
        "away_pct": 5.8,
        "draw_pct": 15.1,
        "home_pct": 79.1,
        "lean_key": "home",
        "lean_label": "Dinamo Zagreb"
      },
      "over_under": {
        "api_hint": null,
        "avg_total": 3.23,
        "away_avg_scored": 1.1,
        "confidence": "medium",
        "home_avg_scored": 2.7,
        "over_prob": 62.6,
        "pick": "Under 2.5",
        "pick_prob": 62.6,
        "source": "xG_dc",
        "strong_pick": true,
        "total_expected": 3.23,
        "under_prob": 37.4
      },
      "prob_source": "poisson",
      "value_bet_enhanced": {
        "bookmaker_id": 0,
        "bookmaker_name": "Pinnacle",
        "edge": 2.4,
        "implied_prob": 77.5,
        "is_value": false,
        "label": "Home",
        "market": "Dinamo Zagreb Win",
        "model_prob": 79.4,
        "odds": 1.29
      }
    },
    "closing_line_bundle": {
      "away_team": "NK Lokomotiva Zagreb",
      "closing_bookmaker": "Pinnacle",
      "closing_capture": "PRE5",
      "early_bookmaker": "Pinnacle",
      "early_capture": "PRE30",
      "has_data": true,
      "home_team": "Dinamo Zagreb",
      "largest_move_kind": null,
      "max_abs_move_pp": 0.0,
      "model_vs_closing": [
        {
          "closing_implied_pct": 71.75,
          "gap_pp": 7.42,
          "kind": "1x2_h",
          "model_pct": 79.17
        },
        {
          "closing_implied_pct": 15.96,
          "gap_pp": -0.87,
          "kind": "1x2_d",
          "model_pct": 15.09
        },
        {
          "closing_implied_pct": 12.29,
          "gap_pp": -6.56,
          "kind": "1x2_a",
          "model_pct": 5.74
        },
        {
          "closing_implied_pct": 68.52,
          "gap_pp": -5.92,
          "kind": "ou_o",
          "model_pct": 62.6
        },
        {
          "closing_implied_pct": 31.48,
          "gap_pp": 5.92,
          "kind": "ou_u",
          "model_pct": 37.4
        }
      ],
      "movement": [
        {
          "closing": 1.29,
          "early": 1.29,
          "implied_closing_pct": 71.75,
          "implied_delta_pp": 0.0,
          "implied_early_pct": 71.75,
          "kind": "1x2_h"
        },
        {
          "closing": 5.8,
          "early": 5.8,
          "implied_closing_pct": 15.96,
          "implied_delta_pp": 0.0,
          "implied_early_pct": 15.96,
          "kind": "1x2_d"
        },
        {
          "closing": 7.53,
          "early": 7.53,
          "implied_closing_pct": 12.29,
          "implied_delta_pp": 0.0,
          "implied_early_pct": 12.29,
          "kind": "1x2_a"
        },
        {
          "closing": 1.36,
          "early": 1.36,
          "implied_closing_pct": 68.52,
          "implied_delta_pp": 0.0,
          "implied_early_pct": 68.52,
          "kind": "ou_o"
        },
        {
          "closing": 2.96,
          "early": 2.96,
          "implied_closing_pct": 31.48,
          "implied_delta_pp": 0.0,
          "implied_early_pct": 31.48,
          "kind": "ou_u"
        }
      ],
      "movement_negligible": true,
      "same_bookmaker": true,
      "top_value_gap": {
        "gap_pp": 7.4,
        "kind": "1x2_h"
      }
    },
    "correct_score_insight": {
      "best_value": null,
      "most_likely": {
        "label": "2-0",
        "prob": 13.5
      }
    },
    "home_xg": 2.61,
    "homepage_pick": null,
    "market_cards": [
      {
        "decision": "value_bet",
        "ev_available": true,
        "ev_no": 0.2182,
        "ev_yes": -0.2675,
        "featured": true,
        "id": "btts",
        "max_ev": 0.2182,
        "no_prob": 56.4,
        "sort_key": 10346.38,
        "tier": "best",
        "value_side": "no",
        "yes_prob": 43.6
      },
      {
        "decision": "value_bet",
        "ev_available": true,
        "ev_over": -0.1236,
        "ev_under": 0.1594,
        "featured": false,
        "id": "ou_2_5",
        "max_ev": 0.1594,
        "over_prob": 62.6,
        "sort_key": 10143.46,
        "tier": "best",
        "under_prob": 37.4,
        "value_side": "under"
      },
      {
        "decision": "no_bet",
        "ev": -0.0234,
        "ev_available": true,
        "featured": false,
        "id": "1x2",
        "implied_prob": 0.7175,
        "max_ev": -0.0234,
        "model_prob": 0.7917,
        "side_label": "Dinamo Zagreb",
        "sort_key": 1794.15,
        "tier": "bad_ev"
      },
      {
        "featured": false,
        "id": "correct_score",
        "sort_key": 820.5,
        "tier": "risk",
        "top_label": "2-0",
        "top_prob": 13.5
      }
    ],
    "match": {
      "away_expected_goals": null,
      "away_team_id": 1017,
      "away_team_logo": "/static/teams/1017.webp",
      "away_team_name": "NK Lokomotiva Zagreb",
      "country_flag": "/static/images/country/hr.svg",
      "country_name": "Croatia",
      "fixture_id": 1384094,
      "goals_away": null,
      "goals_home": null,
      "home_expected_goals": null,
      "home_team_id": 620,
      "home_team_logo": "/static/teams/620.webp",
      "home_team_name": "Dinamo Zagreb",
      "league_country": "Croatia",
      "league_id": 210,
      "league_logo": "/static/leagues/210.webp",
      "league_name": "HNL",
      "league_season": 2025,
      "match_date": "2026-05-23 15:00:00",
      "score_fulltime_away": null,
      "score_fulltime_home": null,
      "status_long": "Not Started",
      "status_short": "NS"
    },
    "match_decision": {
      "confidence": {
        "breakdown": [
          "pred_conf_md_strong_fav_1x2",
          "pred_conf_md_line_above_ev"
        ],
        "breakdown_resolved": [
          "Strong favourite in 1X2 model (+1.5)",
          "At least one tracked line above +EV threshold (+0.5)"
        ],
        "score": 9.0
      },
      "markets": {
        "1x2": {
          "1x2_ev_mode": "market_first_p15",
          "away": {
            "alpha": 0.1803,
            "best_odd": 7.53,
            "calibration": {
              "active": false,
              "hook": "CALIBRATE_1X2_P_FINAL"
            },
            "edge": -0.0118,
            "ev": -0.1634,
            "implied_prob": 0.1229,
            "model_prob": 0.0574,
            "p_final": 0.1111
          },
          "draw": {
            "alpha": 0.1974,
            "best_odd": 5.8,
            "calibration": {
              "active": false,
              "hook": "CALIBRATE_1X2_P_FINAL"
            },
            "edge": -0.0017,
            "ev": -0.0843,
            "implied_prob": 0.1596,
            "model_prob": 0.1509,
            "p_final": 0.1579
          },
          "ev_available": true,
          "home": {
            "alpha": 0.5332,
            "best_odd": 1.29,
            "calibration": {
              "active": false,
              "hook": "CALIBRATE_1X2_P_FINAL"
            },
            "edge": 0.0396,
            "ev": -0.0234,
            "implied_prob": 0.7175,
            "model_prob": 0.7917,
            "p_final": 0.7571
          }
        },
        "btts": {
          "best_no_odd": 2.16,
          "best_yes_odd": 1.68,
          "edge_no": 0.1252,
          "edge_yes": -0.1252,
          "ev_available": true,
          "ev_no": 0.2182,
          "ev_yes": -0.2675,
          "implied_no": 0.4388,
          "implied_yes": 0.5612,
          "n_bookmakers": 11,
          "reliability": "medium"
        },
        "ou25": {
          "best_over_odd": 1.4,
          "best_under_odd": 3.1,
          "edge_over": -0.06,
          "edge_under": 0.06,
          "ev_available": true,
          "ev_over": -0.1236,
          "ev_under": 0.1594,
          "implied_over": 0.686,
          "implied_under": 0.314,
          "n_bookmakers": 11,
          "reliability": "medium"
        }
      },
      "match_tier": "value_game",
      "min_ev": 0.02,
      "total_xg": 3.23,
      "variance_flag": false
    },
    "unified_decision": {
      "actionable_ev_threshold": 0.02,
      "algorithm": {
        "enabled_since": "2026-04-26",
        "game_typing_module": true,
        "version": "2.1.0"
      },
      "balanced_alternative": null,
      "best_tracked_ev": 0.2182,
      "confidence": 7.5,
      "decision_confidence_v1": {
        "breakdown": [
          "pred_conf_v1_primary_line",
          "pred_conf_v1_primary_ev_above_10",
          "pred_conf_v1_multi_ev_lines"
        ],
        "breakdown_resolved": [
          "Primary line identified (+1.0)",
          "Primary EV above 10% (+1.0)",
          "Two or more valid +EV lines at threshold (+0.5)"
        ],
        "score": 7.5
      },
      "execution": {
        "1x2_dominant": true,
        "1x2_open_contest": false,
        "grade": "A",
        "stake_factor": 1.0
      },
      "favourite_misaligned_1x2": {
        "active": false,
        "gap": null,
        "side": null
      },
      "game_type": {
        "label_zh": "\u5f3a\u4fe1\u53f7\uff08\u4f4e\u65b9\u5dee\uff09",
        "scoring_type": "strong_signal",
        "signals": {
          "btts_yes_prob": 0.436,
          "draw_prob": 0.1509,
          "max_1x2_prob": 0.7917,
          "over_prob": 0.626,
          "total_xg": 3.23,
          "under_prob": 0.374,
          "xg_diff": 1.99
        },
        "type": "strong_signal",
        "typing_weights_enabled": true
      },
      "hero_display_pick": null,
      "longshot_picks": [],
      "markets": {
        "1x2": {
          "decision": "no_bet",
          "edge": 0.0396,
          "ev": -0.0234,
          "implied_prob": 0.7175,
          "max_ev_side": "home",
          "model_prob": 0.7917,
          "side": "home",
          "side_label": "Dinamo Zagreb"
        },
        "btts": {
          "decision": "value_bet",
          "edge": 0.1252,
          "ev": 0.2182,
          "implied_prob": 0.4388,
          "model_prob": 0.564,
          "side": "no",
          "value_side": "no"
        },
        "ou_2_5": {
          "decision": "value_bet",
          "edge": 0.06,
          "ev": 0.1594,
          "implied_prob": 0.314,
          "model_prob": 0.374,
          "side": "under",
          "value_side": "under"
        }
      },
      "match_id": 1384094,
      "match_regime": {
        "action": "bet",
        "actionable": true,
        "clear_edge": true,
        "code": "clear_edge",
        "execution_line_key": null,
        "insight_line_key": null,
        "max_valid_ev": 0.2182,
        "min_ev": 0.02,
        "stake_mult": 1.0,
        "use_split_strip": false
      },
      "match_tier": "value_game",
      "no_clear_primary": false,
      "probabilities": {
        "away": 0.0574,
        "draw": 0.1509,
        "home": 0.7917
      },
      "reason_codes": [
        "no_ev_1x2",
        "high_total_goals"
      ],
      "secondary_pick": null,
      "secondary_picks": [],
      "suppressed_primary": null,
      "teams": {
        "away": "NK Lokomotiva Zagreb",
        "home": "Dinamo Zagreb"
      },
      "top_pick": {
        "composite_score": 0.123065,
        "decision": "value_bet",
        "ev": 0.2182,
        "implied_prob": 0.4388,
        "market": "btts",
        "model_prob": 0.564,
        "not_dominant": false,
        "primary_strength": "clear",
        "risk_band": "strong",
        "risk_tier": "primary",
        "side": "no",
        "slot": "primary",
        "speculative_primary": false
      },
      "valid_markets_count": 2
    }
  },
  "fixture_id": 1384094,
  "generated_at_utc": "2026-05-23T19:10:13.722521+00:00",
  "lang_id": "en"
}
How to use this
  • Focus on the Primary line when you want one actionable idea.
  • Do not parlay many thin-edge picks together; edges do not add reliably.
  • Treat longshots as optional, high-stake-sizing plays only.

Get Premium Predictions for Dinamo Zagreb & NK Lokomotiva Zagreb!

Unlock in-depth analysis, exclusive betting tips, and match forecasts with our premium subscription service.

Subscribe Now
Back to Statistics
HNL HNLStandings
# TEAM MP W D L PTS
1 Dinamo Zagreb 36 27 5 4 86
2 HNK Hajduk Split 36 20 8 8 68
3 NK Varazdin 36 15 9 12 54
4 HNK Rijeka 36 14 11 11 53
5 NK Lokomotiva Zagreb 36 10 14 12 44
6 Istra 1961 36 12 7 17 43
7 NK Slaven Belupo 36 10 11 15 41
8 HNK Gorica 36 11 8 17 41
9 NK Osijek 36 8 11 17 35
10 Vukovar 36 6 10 20 28
# TEAM MP GS GC +/- PTS
1 Dinamo Zagreb 36 93 28 +65 86
2 HNK Hajduk Split 36 61 36 +25 68
3 HNK Rijeka 36 49 36 +13 53
4 NK Varazdin 36 47 46 +1 54
5 NK Slaven Belupo 36 46 61 -15 41
6 HNK Gorica 36 40 48 -8 41
7 NK Lokomotiva Zagreb 36 40 52 -12 44
8 Istra 1961 36 39 50 -11 43
9 Vukovar 36 37 73 -36 28
10 NK Osijek 36 27 49 -22 35
# TEAM MP xG xGC +/- PTS
1 Dinamo Zagreb 36 69.3 25.5 +43.8 86
2 HNK Hajduk Split 36 66.5 36.7 +29.8 68
3 HNK Rijeka 36 50.7 32.0 +18.7 53
4 HNK Gorica 36 38.3 43.4 -5.1 41
5 NK Osijek 36 38.2 43.3 -5.1 35
6 NK Lokomotiva Zagreb 36 41.0 46.5 -5.5 44
7 NK Varazdin 36 36.8 42.5 -5.7 54
8 NK Slaven Belupo 36 35.6 51.7 -16.1 41
9 Vukovar 36 29.1 54.0 -24.9 28
10 Istra 1961 36 31.4 61.4 -30.0 43