luvv to helpDiscover the Best Free Online Tools
Topic 3 of 8

Simple Moving Average Forecasts

Learn Simple Moving Average Forecasts for free with explanations, exercises, and a quick test (for Marketing Analyst).

Published: December 22, 2025 | Updated: December 22, 2025

Who this is for

Marketing analysts, growth/CRM specialists, and anyone who needs quick, explainable forecasts for KPIs like traffic, sign-ups, revenue, or ad spend.

Prerequisites

  • Comfort with basic arithmetic (averages).
  • Know your data’s period (daily, weekly, monthly) and that it’s evenly spaced.
  • Basic spreadsheet skills (SUM, AVERAGE) or a simple scripting environment.

Why this matters

As a Marketing Analyst, you’ll often need simple, fast forecasts to plan budgets, inventory, or campaign targets. A Simple Moving Average (SMA) delivers a quick baseline that is easy to explain to stakeholders and compare against more advanced models.

  • Set next week’s lead targets from the last 3 weeks.
  • Estimate next month’s traffic from recent months.
  • Smooth noisy KPI charts for clearer reporting.

Concept explained simply

A Simple Moving Average forecast is the average of the last N periods. To predict the next period, you compute the mean of the most recent N actual values.

Example: With weekly sign-ups [80, 92, 88, 95, 90], a 3-week SMA forecast for the next week = average of the last 3 actuals (88, 95, 90) = 91.0.

Mental model: a sliding window

Imagine a fixed-size window sliding over your time series. The value of the window is the average of the data inside it. As the window moves forward one step, you drop the oldest value and add the newest.

  • Small window (e.g., N=2–3): reacts quickly, but can be noisy.
  • Large window (e.g., N=6–12): smoother, but lags changes.

How to compute an SMA forecast (step-by-step)

  1. Pick a window length N (e.g., 3).
  2. Collect the last N actual values.
  3. Compute their average.
  4. Use that average as the forecast for the next period.
Choosing N (quick guide)
  • If you need responsiveness (promotions, volatile markets): smaller N (2–4).
  • If your KPI is noisy: larger N (5–12) to smooth.
  • If data has strong seasonality (e.g., weekly pattern): pick N close to the season length for smoothing; but note SMA does not explicitly model seasonality.

Worked examples

Example 1: Weekly leads (3-week SMA)

Data (weeks 1–5): 80, 92, 88, 95, 90

  • SMA(week 3) = (80+92+88)/3 = 86.67
  • SMA(week 4) = (92+88+95)/3 = 91.67
  • SMA(week 5) = (88+95+90)/3 = 91.00
  • Forecast for week 6 = 91.00
Example 2: Daily clicks (2-day SMA)

Data (days 1–7): 100, 120, 130, 110, 140, 150, 160

  • SMA(day 3) = (100+120)/2 = 110
  • SMA(day 4) = (120+130)/2 = 125
  • SMA(day 5) = (130+110)/2 = 120
  • Forecast for day 8 = average of days 6–7 = (150+160)/2 = 155
Example 3: Effect of window length

Monthly sign-ups (1–8): 120, 135, 150, 145, 160, 155, 170, 165

  • N=2 forecasts react fast but fluctuate.
  • N=4 forecasts are smoother but lag peaks/troughs.
  • Forecast for month 9:
    • N=2: avg(170, 165) = 167.5
    • N=4: avg(145, 160, 155, 170) = 157.5

Choose based on whether responsiveness or smoothness matters more.

Model tuning and evaluation

  • Holdout test: Use earlier periods to predict a few recent periods and measure error.
  • Walk-forward: Predict t+1 using values up to t, repeat across a range.
  • Metrics: MAE (mean absolute error), MAPE (mean absolute percentage error), RMSE.
Quick evaluation workflow
  1. Pick candidate N values (e.g., 2, 3, 4).
  2. For each N, do 1-step-ahead walk-forward over recent periods.
  3. Compute MAPE for each N.
  4. Select N with lowest error.

Common mistakes and self-check

  • Too small N: forecasts jump around. Self-check: Does your forecast zigzag with noise?
  • Too large N: forecasts lag behind real changes. Self-check: Do turning points come late?
  • Using future data: ensure the average uses only data up to time t when forecasting t+1.
  • Ignoring seasonality: SMA won’t capture repeating weekly/monthly patterns unless N aligns and even then only smooths, not forecasts peaks.
  • Rounding too early: keep decimals during calculation, round only for presentation.
  • Inconsistent periods: ensure time steps are evenly spaced and comparable.

Exercises (practice)

Try these directly in a spreadsheet or notebook. Answers are hidden below each exercise.

Exercise 1 — 3-period SMA forecast

Data (weeks 1–5 sign-ups): 80, 92, 88, 95, 90. Compute the 3-week SMA for weeks 3–5 and forecast week 6.

  • Tip: Forecast week 6 uses the average of weeks 3–5.
  • Check: Keep at least two decimals until the final step.
Show solution

SMA(week 3) = (80+92+88)/3 = 86.67
SMA(week 4) = (92+88+95)/3 = 91.67
SMA(week 5) = (88+95+90)/3 = 91.00
Forecast week 6 = 91.00

Exercise 2 — Pick the best window size

Monthly sign-ups (Jan–Jun): 120, 135, 150, 145, 160, 155. Evaluate N ∈ {2, 3, 4} using 1-step-ahead forecasts for months 5 and 6, and choose the N with the lowest MAPE.

  • Tip: For month 5, use data up to month 4; for month 6, use data up to month 5.
  • Check: Compute absolute percentage errors for both months and average them.
Show solution

N=2:
m5̂ = avg(150,145)=147.5; APE=|160-147.5|/160=7.81%
m6̂ = avg(145,160)=152.5; APE=|155-152.5|/155=1.61%
MAPE ≈ 4.71%

N=3:
m5̂ = avg(135,150,145)=143.33; APE=10.42%
m6̂ = avg(150,145,160)=151.67; APE=2.15%
MAPE ≈ 6.29%

N=4:
m5̂ = avg(120,135,150,145)=137.5; APE=14.06%
m6̂ = avg(135,150,145,160)=147.5; APE=4.84%
MAPE ≈ 9.45%

Best N = 2 (lowest MAPE ≈ 4.71%).

Self-check checklist

  • I only used past data for each forecast.
  • I computed averages with consistent decimal precision.
  • I tested more than one window size.
  • I reported both the forecast and an error metric.

Practical projects

  • Build a dashboard card: Plot KPI with SMA overlays for N=3 and N=7. Add next-period SMA forecasts.
  • Backtest your KPI: Last 12 periods, walk-forward with N=2–6, report MAE/MAPE and pick the best.
  • Budget sanity check: Forecast next month’s spend and compare it to your planned budget.

Mini challenge

Data (weekly sessions, weeks 1–8): 300, 320, 310, 340, 330, 350, 360, 355. Choose N ∈ {3, 4}. Compute the forecast for week 9. Which N would you present and why?

Suggested answer

N=3 forecast: avg(350, 360, 355) = 355.00
N=4 forecast: avg(330, 350, 360, 355) = 348.75
Choose based on goal: N=3 is more responsive (recent upward momentum), N=4 is smoother.

Learning path

  • Start: Simple Moving Average (this lesson).
  • Next: Weighted Moving Average (gives more weight to recent data).
  • Then: Exponential Smoothing (EMA, SES), trend and seasonality basics.
  • Finally: Model selection, cross-validation, and combining forecasts.

Next steps

  • Run a quick backtest on your own KPI and pick N based on error.
  • Document your chosen N and rationale (responsiveness vs smoothness).
  • Share the baseline forecast with stakeholders and track outcomes.

Progress and test

Take the quick test below to check your understanding. Available to everyone; logged-in users will have their progress saved automatically.

Practice Exercises

2 exercises to complete

Instructions

Data (weeks 1–5 sign-ups): 80, 92, 88, 95, 90.

  1. Compute 3-week SMA for weeks 3–5.
  2. Use it to forecast week 6.
  • Tip: Forecast week 6 = average of weeks 3–5.
Expected Output
SMA(week 3)=86.67, SMA(week 4)=91.67, SMA(week 5)=91.00; Forecast(week 6)=91.00

Simple Moving Average Forecasts — Quick Test

Test your knowledge with 8 questions. Pass with 70% or higher.

8 questions70% to pass

Have questions about Simple Moving Average Forecasts?

AI Assistant

Ask questions about this tool