LSAT Score Calculator
Estimate your scaled score based on the raw results of your practice test.
Logical Reasoning (Raw)
Reading Comp (Raw)
Logic Games / AR (Raw)
Calculate Scaled Score
Your Estimated LSAT Results
Total Raw
0
Scaled Score
120
Percentile
0%
How the LSAT is Scored
The Law School Admission Test (LSAT) uses a raw-to-scaled conversion system. Your raw score is simply the number of questions you answer correctly across the three scored sections (Logical Reasoning, Reading Comprehension, and Analytical Reasoning). There is no penalty for incorrect answers.
Raw vs. Scaled Scores
Because every LSAT administration varies slightly in difficulty, the Law School Admission Council (LSAC) applies a "equating" process. This ensures that a 165 on a June test represents the same level of ability as a 165 on an October test. While a raw score of 60 might get you a 164 on one test, it might be a 165 on another.
Example Scoring Scenario
Section 1 (LR): 22 correct out of 26
Section 2 (RC): 20 correct out of 27
Section 3 (AR/LG): 18 correct out of 23
Total Raw Score: 60
Estimated Scaled Score: 165 (approx. 90th percentile)
LSAT Score Ranges
Score Range
Level
Admissions Outlook
170 – 180
98th+ Percentile
T-14 Law Schools
160 – 169
80th – 97th Percentile
Top 50 Law Schools
150 – 159
44th – 79th Percentile
Regional Law Schools
Below 150
Below Average
Lower Tier / Unranked
function calculateLSATScore() {
var lr = parseInt(document.getElementById('lr_raw').value) || 0;
var rc = parseInt(document.getElementById('rc_raw').value) || 0;
var lg = parseInt(document.getElementById('lg_raw').value) || 0;
// Cap inputs at maximum possible per section
if (lr > 26) lr = 26;
if (rc > 27) rc = 27;
if (lg > 23) lg = 23;
var totalRaw = lr + rc + lg;
var scaled = 120;
var percentile = "0%";
// Accurate LSAT Conversion Logic (Approximated 3-section Modern Scale)
if (totalRaw >= 75) { scaled = 180; percentile = "99.9%"; }
else if (totalRaw == 74) { scaled = 179; percentile = "99.8%"; }
else if (totalRaw == 73) { scaled = 177; percentile = "99.5%"; }
else if (totalRaw == 72) { scaled = 176; percentile = "99.2%"; }
else if (totalRaw == 71) { scaled = 175; percentile = "98.9%"; }
else if (totalRaw == 70) { scaled = 174; percentile = "98.5%"; }
else if (totalRaw == 69) { scaled = 173; percentile = "98.1%"; }
else if (totalRaw == 68) { scaled = 172; percentile = "97.5%"; }
else if (totalRaw == 67) { scaled = 171; percentile = "96.8%"; }
else if (totalRaw == 66) { scaled = 170; percentile = "96.0%"; }
else if (totalRaw == 65) { scaled = 169; percentile = "95.0%"; }
else if (totalRaw == 64) { scaled = 168; percentile = "93.9%"; }
else if (totalRaw == 63) { scaled = 167; percentile = "92.7%"; }
else if (totalRaw == 62) { scaled = 166; percentile = "91.3%"; }
else if (totalRaw == 61) { scaled = 165; percentile = "89.8%"; }
else if (totalRaw == 60) { scaled = 164; percentile = "88.1%"; }
else if (totalRaw == 59) { scaled = 163; percentile = "86.3%"; }
else if (totalRaw == 58) { scaled = 162; percentile = "84.4%"; }
else if (totalRaw == 57) { scaled = 161; percentile = "82.3%"; }
else if (totalRaw == 56) { scaled = 160; percentile = "80.1%"; }
else if (totalRaw == 55) { scaled = 159; percentile = "77.8%"; }
else if (totalRaw == 54) { scaled = 158; percentile = "75.3%"; }
else if (totalRaw == 53) { scaled = 157; percentile = "72.8%"; }
else if (totalRaw == 52) { scaled = 156; percentile = "70.1%"; }
else if (totalRaw == 51) { scaled = 155; percentile = "67.3%"; }
else if (totalRaw == 50) { scaled = 154; percentile = "64.4%"; }
else if (totalRaw == 49) { scaled = 153; percentile = "61.4%"; }
else if (totalRaw == 48) { scaled = 152; percentile = "58.4%"; }
else if (totalRaw == 47) { scaled = 151; percentile = "55.3%"; }
else if (totalRaw == 46) { scaled = 150; percentile = "52.2%"; }
else if (totalRaw == 45) { scaled = 149; percentile = "49.1%"; }
else if (totalRaw == 44) { scaled = 148; percentile = "46.1%"; }
else if (totalRaw == 43) { scaled = 147; percentile = "43.1%"; }
else if (totalRaw == 42) { scaled = 146; percentile = "40.1%"; }
else if (totalRaw == 41) { scaled = 145; percentile = "37.2%"; }
else if (totalRaw == 40) { scaled = 144; percentile = "34.3%"; }
else if (totalRaw >= 35) { scaled = 140; percentile = "21.5%"; }
else if (totalRaw >= 30) { scaled = 135; percentile = "11.2%"; }
else if (totalRaw >= 25) { scaled = 130; percentile = "4.8%"; }
else if (totalRaw >= 20) { scaled = 125; percentile = "1.5%"; }
else { scaled = 120; percentile = "0.1%"; }
document.getElementById('total_raw_display').innerText = totalRaw;
document.getElementById('scaled_score_display').innerText = scaled;
document.getElementById('percentile_display').innerText = percentile;
document.getElementById('lsat_result_container').style.display = 'block';
}