Reading Your Card
~7 min readReading Your Card — Status, Forecast, Gap & Time Left
Every card with a goal shows an Information Bar just below the goal line. The Information Bar can be displayed in two styles, set per-dashboard via Dashboard Preferences.
Table style (default) — a compact labeled grid with a color-coded accent bar at the bottom of each cell.
Pill style — a horizontal row of small rounded pill tags, color-coded by status.
Both styles show the same indicators. The cells tell you whether you are on track, how much runway remains, and where you stand relative to your goal.
Hover tooltips: In the Table style, hovering over a cell shows the full text in a tooltip. This applies to long status labels and sub-labels.
Status
Status reflects where your metric currently stands relative to its goal, shown as a plain-language label — Exceeding, Goal Reached, Needs Attention, At Risk, or Critical — from best to worst. See How dashboardSMASHBOARD Calculates Your Card's Signals for exactly what each label means.
Special states you may see instead: Achieved (period goal locked as met), Paused (card isn't refreshing), Building History (waiting on comparison-period data), Early Window (too early in the period to assess fairly), or — (no goal set).
Status requires the
RISKflag in your SmashGL query. Without it, Status always shows "—".
Status transitions: When Status changes between refreshes, the card shows a transition pill — "↓ Slipping (was On Pace)" — so you can see the direction of change at a glance.
Forecast
Forecast projects your end-of-period total based on current pace and time remaining, shown as a label — Will Exceed, On Pace, Slipping, Off Track, Will Miss, or Insufficient Data early in the period.
Forecast requires the
FORECASTflag and a calendar-period window. Rolling windows (Last 30 days) have no end date — Forecast shows "—" for those.
Important caveats about Forecast:
- Forecast is a straight-line projection — it assumes every remaining day will look like the average day so far. Promotions, restocks, seasonality, and ad spend changes are not modelled.
- Forecast is suppressed early in the period (the same Early Window guard Status uses) — insufficient data to project reliably. The cell shows "Insufficient Data."
- Weekend-heavy stores will look pessimistic on a Monday and optimistic on a Sunday.
- The forecast is computed server-side at data fetch time — cards refresh at most once per hour.
Gap
Gap shows the signed difference between the current value and your goal.
| Display | Color | Meaning |
|---|---|---|
| +N (e.g. +$2.1k, +47 orders) | Green | Surplus — you have exceeded the goal |
| −N (e.g. −$800, −12 orders) | Red | Deficit — you are short of the goal |
| — | Grey | No goal set |
Gap requires the
GAPflag. The value uses the same unit as your metric (currency, orders, sessions, etc.).
Time Left
Time Left shows the time remaining in the current calendar period, displayed in abbreviated units: D (days), W (weeks), M (months), Y (years).
| Display | Color | Meaning |
|---|---|---|
| 12D, 3W, etc. | Green | More than 7 days remaining |
| 5D, 6D | Amber | 4–7 days remaining |
| 1D, 2D, 3D | Red | 1–3 days remaining |
| Period ended | Grey | The window has closed |
| — | Grey | Rolling window (no defined end date) |
Time Left is always shown when a calendar period window is used. It does not apply to rolling windows.
A Worked Example — Putting the Cells Together
March revenue goal: $15,000 · Today: March 18 (12 days remaining in a 31-day month) · Net sales so far: $8,452
| Cell | Value | What it's telling you |
|---|---|---|
| Status | Critical (red) | Meaningfully behind the goal based on what's happened so far |
| Forecast | Slipping (amber) | Projected to finish just under the goal if the current pace holds | | Gap | −$6,548 (red) | Still need $6,548 more to hit the goal |
| Time Left | 12D (green) | Plenty of the period still remains |
Why Status and Forecast disagree: Status is a static snapshot — where am I right now? Forecast adds the time dimension — where will I finish if today's pace continues? Early in a window, Status will almost always look worse than Forecast. Late in a window, they converge. Watch Forecast early in the period and Status late.
Trends and Secondary Stats
The Trend Display
The TREND flag in SmashGL enables a comparison pill showing the percentage change vs. the prior period. Enable it in the Simple tab (Trend toggle) or add trend to the WITH clause in the Code tab.
| Visualization | Where the Trend pill appears |
|---|---|
| Metric / Badge | A pill below the hero number (e.g. ▲ 12.4% vs prior) |
| Sparkline / Chart | A pill in the value block above the chart |
| Gauge | A "COMPARISON: X" row below the arc |
| Bar | Not shown (bar charts show dimension breakdowns, not period comparison) | | Table | Not shown |
Trend pill colors:
- Green (▲) — metric increased vs. prior period
- Red (▼) — metric decreased vs. prior period
For lower-is-better metrics (e.g. refund rate, cost per click — set via DIRECTION lower): the pill color is inverted. Green means the metric decreased (good); red means it increased (bad). Green always means "heading in the right direction."
Trend Smoothing
For sparkline and chart visualizations, smoothing reduces day-to-day noise to surface the underlying trend. Enable it in the Simple tab (Smooth toggle) or use the SMOOTH clause in the Code tab.
| Smoothing option | Effect |
|---|---|
| Rolling 7-day | Each day's value is replaced by the average of that day and the 6 preceding days |
| EMA (exponential moving average) | Similar to rolling average but more responsive to recent changes |
Use smoothing when your store has variable day-to-day sales (flash sales, promotions) and the raw sparkline looks too noisy to read a trend.
Secondary Stats
When your SmashGL query's SOURCE clause includes multiple columns, additional columns beyond the primary metric appear as secondary stats — small supplementary numbers displayed below the hero value.
$14,280 ← hero number
of $20,000 ← goal
▲ 8.3% vs prior ← Trend pill
SESSIONS 1,204 AOV $11.86 ← secondary stats
Secondary stats appear for Metric and Badge visualizations only. They do not appear on Sparkline, Chart, Gauge, Bar, or Table cards.
Example — Revenue card with secondary stats:
GOAL hit revenue to >= $20,000 this month
SOURCE shopify.sales.net_sales AS revenue, shopify.sales.orders
SMASH metric WITH trend, forecast, alert, risk, gap TITLED "March Revenue"
With metric visualization, this renders net_sales as the hero number and orders as a secondary stat below it.
Goal Probability
When a calendar-period window is used and the FORECAST flag is enabled, dashboardSMASHBOARD shows a "% chance of hitting goal" pill alongside the Forecast band.
62% chance of hitting goal · FORECAST: On Pace
What the Probability Means
The probability is a statistical estimate based on:
- Current pace — how fast the metric is accumulating relative to the goal
- Historical variance — how variable the metric has been (a smooth revenue curve gives a tighter range than a spiky one)
A 62% probability means: given the current pace and typical day-to-day volatility, you'll hit the goal in roughly 6 out of 10 scenarios.
How to Read It
| Probability range | What it signals |
|---|---|
| ≥ 80% | Strong pace — on track barring surprises |
| 50–79% | Within reach — close but not assured |
| 20–49% | Uncertain — possible with a strong finish |
| < 20% | Unlikely — would need an unusually good remaining period |
Early Window Ranges
Early in a period, there is little data to project from. You may see a range like "35–85% chance" rather than a single point. As more data accumulates, the range narrows and the estimate becomes more reliable.
Early in the period, rely on the Forecast's qualitative band (On Pace, Slipping, etc.) more than the exact probability number.
Still need help?