Kaplan Scaling Laws › Optimal Compute Allocation
Language AI HandbookAll chapters Kaplan Scaling Laws › Optimal Compute AllocationOne section · Sections in this chapter7 / 15 ↓
Reading tools Definitions & inline links
Choose your expertise level to adjust how many terms are explained. Beginners see more tooltips, experts see fewer to maintain reading flow. Hover over underlined terms for instant definitions.
Article links
Make inline references clickable
Kaplan's most influential finding was their guidance on allocating a fixed compute budget between model size and training data. This question is very practical: given a budget of one million dollars worth of GPU time, should you train a modest model for a long time on lots of data, or should you train a very large model for a shorter time on less data? Before scaling laws, practitioners relied on intuition and trial-and-error. Kaplan's analysis provided a principled answer backed by empirical evidence.
The derivation of optimal allocation starts from the fact that compute constrains the product of model size and data: . This means that for a fixed compute budget, increasing necessarily decreases (the number of training tokens seen). The question becomes: what ratio of to minimizes loss for a given ?
Given a compute budget , the optimal model size and dataset size follow:
where:
- : the optimal number of parameters for a given compute budget
- : the optimal number of training tokens for that same budget
- : the total compute budget in PetaFLOP-days
- : denotes proportionality. The left side scales with the right side up to a constant factor
- The exponent 0.73: derived from fitting optimal configurations, indicates parameters should grow faster than the square root of compute
- The exponent 0.27: the complementary exponent for data scaling, since reflects the constraint
These exponents sum to 1.0, which follows from the compute relationship . Taking logarithms: . If we write and , then , requiring . This mathematical constraint ensures consistency: you cannot independently choose how both parameters and data scale with compute, because compute is defined as their product. Notice the stark imbalance: 73% of the compute scaling goes toward larger models, while only 27% goes toward more data.
The asymmetry in these exponents reflects Kaplan's central finding: larger models are more sample-efficient. A bigger model extracts more learning from each training token it sees. This means that as you scale up compute, you should primarily invest in model size rather than training duration. The intuition is that a larger model has more capacity to represent complex patterns, so it can learn those patterns from fewer examples. A smaller model, by contrast, needs to see the same patterns many times before it can reliably capture them.
When your compute budget increases by 10x, you should increase model size by approximately and training tokens by only . Larger models are more sample-efficient. They extract more learning from each token they see.
This recommendation drove concrete decisions. For GPT-3, OpenAI chose a 175B parameter model trained on 300B tokens. Following Kaplan's guidance meant prioritizing a very large model over training on more data.
# Kaplan optimal allocation exponents
exp_N = 0.73
exp_D = 0.27
# Calculate optimal allocation across compute budgets
compute_budgets = np.logspace(2, 6, 50) # 100 to 1M PetaFLOP-days
# Normalize to reasonable scales (these are proportional, not absolute)
# Using rough calibration points from the paper
N_opt = (
1e7 * (compute_budgets / 100) ** exp_N
) # Baseline: 10M params at 100 PF-days
D_opt = (
1e9 * (compute_budgets / 100) ** exp_D
) # Baseline: 1B tokens at 100 PF-days

The visual contrast is striking. As compute increases 10,000x (from to PF-days), optimal model size increases by roughly 2500x while optimal dataset size increases by only about 20x. This asymmetry reflects Kaplan's core finding: bigger models learn more efficiently.
