Every Formula. Every Limitation.

If we can't show you how the number was calculated,
we have no right to show you the number.

Step 1: Academic Z-Scores

SAT Z-Score = (YourSAT - CollegeSATAverage) / ((SAT_75th - SAT_25th) / 1.35)
GPA Z-Score = (YourGPA - DatasetGPAMean) / DatasetGPAStd
Academic Composite = (SAT_Z × 0.55) + (GPA_Z × 0.45)

We compute how far your SAT and GPA are from the college's benchmarks, measured in standard deviations. SAT is weighted 55% because the data in studentsdata.json shows SAT has higher predictive power for acceptance outcomes.

Step 2: Granular Spike Model (v1.0)

S = Σ(W × T × R × P × D × V) × C / 2.5 + DiversityBonus

W: Base (GM: 8.0, Outlier: 4.0, T1: 1.5, T2: 0.6, T3: 0.1)
T: Scope (Local: 1.0, Nat: 3.0, Intl: 5.0, Global Elite: 8.0)
R: Rarity (Common: 1.0, Rare: 1.8, Ultra: 3.5, Unique: 6.0)
P: Institutional (Standard: 1.0, Rec: 1.25, Prest: 1.6, World: 2.2)
D: Cog Load (Low: 0.8, Med: 1.0, High: 1.4, Research: 1.8)
V: Validation (Self: 0.6, Peer: 0.75, Inst: 0.9, Audit: 1.0)
C: Confidence % (0.0 to 1.0)

Criteria-based, never keyword-matching. v1.0 introduces a 6-dimensional rubric for every activity. We apply a saturation limit (sqrt) above 10 points per individual item contribution to prevent 'infinite spikes' from skewed data. The total is scaled by 2.5 to maintain a [0, 15] range.

Diversity Bonus: The 'Renaissance' Modifier

Bonus = Top4_Weighted_Categories(Σ CategoryWeights)
CategoryWeight: T3 (0.2), T2 (0.5), T1 (1.0), Outlier (1.5), GM (2.5)
Scaling: Total Weight 1.5+ (+0.5), 3.0+ (+1.0), 5.0+ (+2.0), 8.0+ (+3.0)

Selective schools reward polymaths. If you have significant achievements across multiple distinct categories (STEM, Arts, Leadership, etc.), your spike score receives a non-linear boost up to +3.0.

Step 3: Major Difficulty Modifier

MajorRate = AcceptedInMajor / AppliedInMajor (from dataset)
OverallRate = AcceptedOverall / AppliedOverall
Modifier = MajorRate / OverallRate  (clamped to [0.5, 1.5])
Additive adjustment = (Modifier - 1) × 0.5

Computed dynamically from the dataset — never hardcoded. CS at top schools typically shows a modifier of 0.70–0.78× based on our data, meaning CS applicants face lower acceptance rates than the school average.

Step 4: International Modifier

If domestic: modifier = 0 (no adjustment)
If international:
  modifier = (college_nonresident_alien_rate / 0.10) × 0.1 - 0.3
Source: College Demographic Data

International applicants compete in a smaller pool. Schools with higher international enrollment rates penalize less. This modifier is always shown to you — it's never hidden in the score.

Step 5: Confidence Scoring

Find profiles where: same school + SAT ±80 + same major category + same intl status
n ≥ 15 → High confidence (range width: ±12%)
n ≥ 8  → Medium confidence (range width: ±20%)
n ≥ 3  → Low confidence (range width: ±30%)
n < 3  → Insufficient data (range width: ±35%)

More similar profiles = narrower range = higher confidence. We always tell you the exact number of profiles this estimate is based on.

Step 6: Final Result (Gated Multiplicative Model)

Academic_Gate = 1 / (1 + e^-(5.0 * (Academic_Z + 1.2)))
Impact = Impact(SpikeRating, MajorMod, IntlMod, Region)

Final_Prob = Academic_Gate * Impact

AdmitGPT v1.0 uses a Gated Multiplicative Model. The 'Academic Gate' is a steep curve—if your academics are more than 2.0σ below the mean, the gate closes and your extracurricular 'Impact' is heavily reduced. This prevents unrealistic 'outlier' results for low-academic applicants at elite schools. You cannot 'buy' your way into a school with ECs if you don't meet the academic floor.

Gap Analyzer: Distance

Distance = √(
  (0.40 × (SAT_diff / SAT_range))² +
  (0.30 × (GPA_diff / GPA_range))² +
  (0.20 × EC_tier_diff)² +
  (0.10 × Awards_diff)²
)

Weighted Euclidean distance within your major category micro-cluster. This finds the most similar accepted and rejected profiles, so you can see exactly what distinguishes them from you.