Net Run Rate Calculation Formula in Cricket

Net Run Rate (NRR) Calculator body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; line-height: 1.6; color: #333; max-width: 800px; margin: 0 auto; padding: 20px; } .nrr-calculator-container { background-color: #f9fbfd; border: 1px solid #e1e4e8; border-radius: 8px; padding: 30px; margin-bottom: 40px; box-shadow: 0 4px 6px rgba(0,0,0,0.05); } .nrr-header { text-align: center; margin-bottom: 25px; color: #2c3e50; } .input-group { margin-bottom: 20px; } .input-row { display: flex; flex-wrap: wrap; gap: 20px; margin-bottom: 15px; } .input-col { flex: 1; min-width: 200px; } label { display: block; margin-bottom: 8px; font-weight: 600; color: #4a5568; } input[type="number"] { width: 100%; padding: 12px; border: 2px solid #cbd5e0; border-radius: 6px; font-size: 16px; transition: border-color 0.3s; box-sizing: border-box; } input[type="number"]:focus { border-color: #38a169; outline: none; } .section-title { font-size: 1.1em; color: #2d3748; margin-bottom: 10px; border-bottom: 2px solid #38a169; padding-bottom: 5px; display: inline-block; } button.calc-btn { background-color: #38a169; color: white; border: none; padding: 15px 30px; font-size: 18px; font-weight: bold; border-radius: 6px; cursor: pointer; width: 100%; transition: background-color 0.2s; margin-top: 10px; } button.calc-btn:hover { background-color: #2f855a; } #nrr-result { margin-top: 25px; padding: 20px; border-radius: 6px; display: none; text-align: center; } .result-value { font-size: 3em; font-weight: 800; margin: 10px 0; } .positive-nrr { background-color: #f0fff4; border: 1px solid #c6f6d5; color: #22543d; } .negative-nrr { background-color: #fff5f5; border: 1px solid #fed7d7; color: #742a2a; } .breakdown { display: flex; justify-content: space-around; margin-top: 15px; font-size: 0.9em; color: #555; border-top: 1px solid rgba(0,0,0,0.1); padding-top: 15px; } .tooltip { font-size: 0.8em; color: #718096; margin-top: 4px; } h2, h3 { color: #2d3748; margin-top: 30px; } p, li { color: #4a5568; margin-bottom: 15px; } code { background: #edf2f7; padding: 2px 6px; border-radius: 4px; color: #c53030; }

Cricket Net Run Rate Calculator

Enter tournament statistics to calculate exact NRR

Your Team's Batting (Runs For)
Use .1 to .5 for balls (e.g., 45.3 is 45 overs, 3 balls)
Your Team's Bowling (Runs Against)
Include overs bowled by your team
Net Run Rate
+0.000
Run Rate For:
0.00
Run Rate Against:
0.00
function calculateNRR() { // Get Input Values var runsScored = parseFloat(document.getElementById('runsScored').value); var oversFacedInput = parseFloat(document.getElementById('oversFaced').value); var runsConceded = parseFloat(document.getElementById('runsConceded').value); var oversBowledInput = parseFloat(document.getElementById('oversBowled').value); // Validation if (isNaN(runsScored) || isNaN(oversFacedInput) || isNaN(runsConceded) || isNaN(oversBowledInput)) { alert("Please enter valid numbers for all fields."); return; } if (oversFacedInput === 0 || oversBowledInput === 0) { alert("Overs faced or bowled cannot be zero."); return; } // Helper function to convert cricket notation (e.g., 45.3) to mathematical overs (e.g., 45.5) function convertToMathOvers(cricketOvers) { var strOvers = cricketOvers.toString(); var parts = strOvers.split('.'); var wholeOvers = parseInt(parts[0]); var balls = 0; if (parts.length > 1) { // If input is 10.1, part[1] is "1", which is 1 ball. // If input is 10.10 (unlikely in cricket notation but possible string), treat as 1 ball if parsed as number previously. // Since we parse float initially, 10.10 becomes 10.1. // We treat the decimal part as the number of balls (1-5). balls = parseInt(parts[1]); // Handle edge case where user might enter 10.6 (which is technically valid math input but means next over) // Assuming standard notation 10.1 to 10.5 if (balls >= 6) { // Just basic error correction or accept it as fraction // Better to interpret strictly as digit: .1 = 1 ball // If .10 comes from float, it looks like .1 } } return wholeOvers + (balls / 6); } // Convert Overs var mathOversFaced = convertToMathOvers(oversFacedInput); var mathOversBowled = convertToMathOvers(oversBowledInput); // Calculate Run Rates var runRateFor = runsScored / mathOversFaced; var runRateAgainst = runsConceded / mathOversBowled; // Calculate NRR var nrr = runRateFor – runRateAgainst; // Display Results var resultDiv = document.getElementById('nrr-result'); var nrrDisplay = document.getElementById('nrrValue'); var rrForDisplay = document.getElementById('rrFor'); var rrAgainstDisplay = document.getElementById('rrAgainst'); // Formatting var finalNRR = nrr.toFixed(3); if (nrr > 0) { finalNRR = "+" + finalNRR; resultDiv.className = "positive-nrr"; } else { resultDiv.className = "negative-nrr"; } nrrDisplay.innerHTML = finalNRR; rrForDisplay.innerHTML = runRateFor.toFixed(2); rrAgainstDisplay.innerHTML = runRateAgainst.toFixed(2); resultDiv.style.display = 'block'; }

What is Net Run Rate (NRR) in Cricket?

Net Run Rate (NRR) is the preferred method for ranking teams with equal points in limited-overs cricket tournaments, such as the ICC World Cup, T20 World Cup, and the IPL (Indian Premier League). It essentially measures a team's winning margin or losing margin throughout a tournament.

Unlike a simple average, the NRR calculates the difference between the speed at which a team scores runs versus the speed at which they concede them. A positive NRR indicates a team is scoring faster than their opponents on average, while a negative NRR suggests the opposite.

The Net Run Rate Calculation Formula

The mathematical formula for NRR is:

NRR = (Total Runs Scored / Total Overs Faced) – (Total Runs Conceded / Total Overs Bowled)

This can be simplified as:

  • Step 1: Calculate your team's Average Runs Per Over (Run Rate For).
  • Step 2: Calculate the opponent's Average Runs Per Over against you (Run Rate Against).
  • Step 3: Subtract the "Run Rate Against" from the "Run Rate For".

How to Handle Incomplete Overs

In cricket, overs are often noted as decimals (e.g., 10.4 overs). However, these cannot be treated as standard decimal numbers in calculation because an over consists of 6 balls, not 10.

To calculate NRR correctly, you must convert the balls into a fraction of 6:

  • 10.1 overs = 10 1/6 overs (approx 10.166)
  • 10.3 overs = 10 3/6 overs (10.5)
  • 10.4 overs = 10 4/6 overs (approx 10.666)

Our calculator above automatically handles this conversion for you. Simply input the overs in standard cricket notation (e.g., 45.2).

Important NRR Rules

  • All Out: If a team is bowled out before completing their full quota of overs (e.g., bowled out in 35 overs in a 50-over match), the calculation counts the full quota of overs (50) as "Overs Faced" for that team, not the actual 35 played. This penalizes teams heavily for getting all out.
  • Duckworth-Lewis (DLS): In rain-affected matches where targets are revised, the NRR calculation changes. Only the runs scored and overs faced up to the point of interruption (or the revised target) are usually considered, depending on specific tournament rules.
  • Abandoned Matches: Matches with no result usually do not contribute to the Net Run Rate figures.

Example Calculation

Let's say Team A has played 2 matches:

  1. Match 1: Scored 180/4 in 20 overs. Conceded 160/8 in 20 overs.
  2. Match 2: Scored 150/10 in 18 overs (All out). Conceded 151/2 in 15.3 overs.

Total Runs Scored: 180 + 150 = 330
Total Overs Faced: 20 + 20 (Note: counted as 20 in Match 2 because they were all out) = 40 overs.

Total Runs Conceded: 160 + 151 = 311
Total Overs Bowled: 20 + 15.5 (15 overs 3 balls = 15.5) = 35.5 overs.

Team Run Rate: 330 / 40 = 8.25
Opponent Run Rate: 311 / 35.5 = 8.76

NRR: 8.25 – 8.76 = -0.51

Leave a Comment