Symmetric Mean Absolute Percentage Error (sMAPE) Calculator
Calculate symmetric Mean Absolute Percentage Error (sMAPE), a bounded, symmetric alternative to MAPE.
Inputs
Comma-separated actual (true) values.
Comma-separated predicted values, same order and count as actual.
sMAPE
7.22%
Valid Samples
4
Step by step
Sum of symmetric ratios: Σ[|y_i−ŷ_i| / ((|y_i|+|ŷ_i|)/2)]
|100 − 110| / ((|100|+|110|)/2) + |200 − 190| / ((|200|+|190|)/2) + |300 − 320| / ((|300|+|320|)/2) + |400 − 370| / ((|400|+|370|)/2)
= 0.2890
sMAPE: (100 / n) × sum of ratios
(100 ÷ 4) × 0.2890
= 7.22%
How it works
Symmetric Mean Absolute Percentage Error (sMAPE) improves on MAPE by dividing by the average of the absolute actual and predicted values rather than the actual value alone: sMAPE = (100/n) × Σ|y_i − ŷ_i| / ((|y_i|+|ŷ_i|)/2). This bounds each term's contribution between 0% and 200% and treats over- and under-predictions more symmetrically, making it more stable than MAPE when actual values are small or the model sometimes over- and sometimes under-predicts significantly.
Formula
sMAPE = (100 / n) * sum(|y_i - y_hat_i| / ((|y_i| + |y_hat_i|) / 2))
- n
- Number of valid samples
- y_i
- Actual value for sample i
- \hat{y}_i
- Predicted value for sample i
Frequently Asked Questions
How does sMAPE fix MAPE's asymmetry problem?
By dividing by the average magnitude of the actual and predicted values instead of the actual value alone, sMAPE gives comparable penalties whether the model over-predicts or under-predicts by the same proportion, unlike MAPE which is skewed toward penalizing over-prediction more.
What's the maximum possible sMAPE value?
Each individual term is bounded at 200% (occurring when actual and predicted have opposite signs or one is zero and the other is nonzero), so overall sMAPE is bounded between 0% and 200%, unlike MAPE which is theoretically unbounded.
Is sMAPE always better than MAPE?
Not universally — sMAPE handles near-zero actual values more gracefully and is more symmetric, but it can behave counterintuitively when actual and predicted values have opposite signs; the best choice depends on your data's characteristics.