Preferencias de cookies

Elija lo que podemos usar. Las cookies estrictamente necesarias mantienen su sesión iniciada y no se pueden desactivar; todo lo demás es decisión suya y no cambia nada en el funcionamiento del sitio. Puede cambiar de opinión cuando quiera desde el pie de página.

A road through a beech forest in autumn, the foreground thick with fallen orange leaves and a guardrail curving away.

Your slow season is not a verdict on your marketing

Photo by Christina & Peter (opens in a new tab) on Pexels

In a seasonal business, last month against this month mostly measures the weather, the tax calendar or the school year. Leads arrive in one month and close in the next, so the revenue report lags every turn of the season. Here is how to read channel revenue through peaks and troughs: same season year over year, cohorts by lead month, and each channel's share rather than its raw total.

Contents
  1. Why month-over-month comparisons mislead
  2. Leads arrive in one month and close in the next
  3. Compare the same season with the same season
  4. Judge a channel's share, not its raw total
  5. Don't cut a channel in its off-season on a lagging number
  6. What "the season" means in different businesses
  7. Reporting a seasonal business honestly
  8. What to do before the next peak

In a seasonal business, this month against last month mostly measures the season. Compare each channel with the same season last year, count sales by the month the lead arrived rather than the month the money did, judge a channel by its share of revenue rather than its total, and never cut a channel on its off-season's first numbers.

A heating and cooling company looks at its September report and sees paid search revenue down 43% from August. The owner has seen this before and knows it is the end of summer, so nobody panics. Then October comes in and search still costs far more per sale than it did in August, in the month the first cold nights arrive and the phones start ringing. That one does get a meeting, and a budget cut, in the exact week demand is turning back up.

Every seasonal business has a version of this: the HVAC company with two peaks, the roofer after a hail storm, the tax preparer from February to April, the tutoring center in August, the gift shop in December, the real estate team in spring. The marketing reports they use were designed for businesses where one month looks roughly like the next. This post is about reading those reports when it does not.

Why month-over-month comparisons mislead

In a seasonal business, the change from one month to the next is mostly demand moving, and every channel rides it. A channel report has no seasonal adjustment, so a month-over-month change in channel revenue mixes the season, the calendar and the marketing into one number that cannot be separated afterwards.

Government statisticians solved this problem decades ago, and the way they describe it is the clearest statement of why your own monthly report misleads you.

Read the logic backwards. If the Census Bureau needs a statistical model to make one month comparable with the next, a marketing report that compares raw months is comparing things the Bureau considers not comparable. Here is how large the difference is in real data.

US retail trade, the same two months read three ways (Census Bureau data via FRED)
ComparisonCalculationChange
January 2026 against December 2025, unadjusted(560,686 − 694,088) ÷ 694,088−19.2%
January 2026 against December 2025, seasonally adjusted(614,871 − 619,122) ÷ 619,122−0.7%
December 2025 against December 2024, unadjusted(694,088 − 671,589) ÷ 671,589+3.4%
January 2026 against January 2025, unadjusted(560,686 − 552,246) ÷ 552,246+1.5%

A store owner reading only the first row would think January was a disaster. The other three rows say January was a normal January in a year that was growing slowly. Your channel report is the first row. It has no adjusted version, and you do not have enough history to build one, which is why the rest of this post uses the cheaper fix in rows three and four: compare with the same month last year.

A month-over-month channel report in a seasonal business is the unadjusted series. Most of what it shows is the season. Read it for breakage, not for performance.

Leads arrive in one month and close in the next

Revenue is usually reported in the month the sale closed, while the lead that produced it arrived earlier. In a steady business the two months look alike. In a seasonal one, the calendar view lags every turn: it flatters a channel as demand falls and punishes it as demand returns.

Our post on long sales cycles covers cohort reporting for businesses where the gap is a year. The seasonal problem is smaller and more common: a gap of a few weeks, which looks harmless until it straddles the end of a peak. Here is one channel through a cooling season and the start of heating. The figures are illustrative assumptions; rerun them with yours.

The assumptions: spend is a flat $6,000 a month, 20% of leads buy, 60% of those buy in the month they called and 40% the month after. May produced 100 leads, so 20 sales, 8 of which close in June.

One channel, two ways of counting the same sales (illustrative)
MonthLeadsSales from this month's leadsSales closed this monthCost per sale, by lead monthCost per sale, by close month
June2505030 + 8 = 38$120$158
July4008048 + 20 = 68$75$88
August3006036 + 32 = 68$100$88
September1252515 + 24 = 39$240$154
October3006036 + 10 = 46$100$130

The arithmetic, for July: 400 leads × 20% = 80 sales from July's leads. Of those, 80 × 60% = 48 close in July; add June's carry-over of 50 × 40% = 20 and July books 68. Cost per sale is $6,000 ÷ 80 = $75 by lead month and $6,000 ÷ 68 = $88 by close month. October books 36 from its own leads plus September's 25 × 40% = 10, so 46, and $6,000 ÷ 46 = $130.

Now read the last two columns as an owner would. By close month, August ties July as the best month of the year; by lead month, August's leads were a third more expensive than July's. September looks like a mild dip at $154 when its leads actually cost $240 a sale. And October, the month demand came back, looks worse than August by close month, because its books carry the thin September behind it. The calendar view tells every turn a month late.

Nothing about this requires a long cycle. A lag of a few weeks is enough, and it is the norm for anything quoted: a replacement system, a roof, a remodel. Count sales by the month the lead arrived and the turns show up when they happen. The cost is patience, because the latest month is never finished; mark it as incomplete in the report rather than leaving it out.

Compare the same season with the same season

The cheapest seasonal adjustment available to a business is last year. Compare each channel's results this season with the same channel in the same season a year ago, on the same method and the same date range, and most of the season cancels out. What is left is closer to the channel.

"Same season" needs more care than "same month", because the calendar moves under you. Easter and Thanksgiving move. A school district starts a week earlier. A filing deadline falls on a weekend. A peak that arrives a week early makes the first part of the season look like growth and the end look like decline, with no change in the marketing at all.

That is a year-over-year comparison, done by the agency that runs the season, and it still pointed the wrong way in January. For an accounting firm or a tax preparer, the lesson is direct: an early-season comparison is a comparison of timing. Judge a tax-season channel on season-to-date figures at the end of the season, or on weeks aligned to the deadline rather than to the calendar date.

Three rules keep a year-over-year comparison honest:

  • Align the season, not the date. Count weeks from the event that drives demand: the filing deadline, the first day of school, Black Friday, the first frost. A week-aligned comparison is a few minutes of work in a spreadsheet.
  • Hold the method still. If last year's report credited sales differently, used a different lead export or counted a different date range, the comparison measures the change in method. Our post on attribution windows covers why the date range of the lead export decides what can be credited at all.
  • Write down what was different. A mild winter, a new competitor, a price rise, a branch that opened. Last season is a baseline only if you remember what was in it.

Judge a channel's share, not its raw total

A channel's share is its matched revenue as a percentage of all revenue in the period, unattributed revenue included. Seasons lift and drop every channel together, so raw totals mostly track demand. Share asks the question a budget needs: did this channel win more or less of the demand that existed?

This is the same move Google makes when it reports search interest, and for the same reason.

Apply it to a channel report. Below, a home services business compares its peak month with a slow one. The figures are illustrative.

Raw revenue against share of revenue, peak month and slow month (illustrative)
SourcePeak monthShareSlow monthShareChange in revenue
Paid search$120,00030%$48,00032%−60%
Paid social$40,00010%$9,0006%−77.5%
Referral$80,00020%$33,00022%−59%
Direct / Unknown$160,00040%$60,00040%−62.5%
Total$400,000100%$150,000100%−62.5%

The arithmetic: paid search fell from $120,000 to $48,000, which is ($120,000 − $48,000) ÷ $120,000 = 60%, while the business as a whole fell ($400,000 − $150,000) ÷ $400,000 = 62.5%. Search lost less than the season did, so its share rose from 30% to $48,000 ÷ $150,000 = 32%. Paid social fell 77.5%, fifteen points worse than the season, and its share went from 10% to 6%. On the raw totals both channels collapsed. On share, one held its ground and one did not.

Share has limits, and they are worth stating before someone else does:

  • It is zero-sum. If one channel collapses, every other channel's share rises without doing anything. Read shares together, never one at a time.
  • Watch the unknown share. If Direct / Unknown moves from 40% to 55% between seasons, the change is probably in what was recorded, not in the channels. Our post on match rates covers what moves that number.
  • Share does not pay bills. A channel can hold its share and still cost more than it returns in a slow month. Share tells you whether the channel is competitive; cost per sale by lead month tells you whether it is affordable.
  • Compare share across the same season too. A channel's share can be seasonal in its own right. Emergency search wins a bigger share in a heat wave; planned work arrives through other routes. Last year's share in the same season is the baseline.

Don't cut a channel in its off-season on a lagging number

The most expensive seasonal mistake is cutting a channel in the first weeks of a slow period, or the first weeks of a new peak, because the booked revenue looks weak. In both cases the number is lagging the season, and the cut lands just as the channel's own leads would have paid off.

Look again at October in the lag table. By close month it costs $130 a sale against $88 in August, so it reads as a channel that has lost its touch. By lead month it is a $100 month after a $240 one, a channel recovering as demand returns. The owner in the opening paragraph cut in October. The report that justified it was still measuring September.

This is where we will say something arguable: for most seasonal local businesses, the off-season is the worst time to decide anything about a channel and the best time to test one. Volumes are low, so the money at risk is small, and crews or staff have room to take what comes in. A pause test run in a quiet month, as our post on incrementality tests describes, costs little. A cut decided in a quiet month and carried into the peak costs the peak.

Before cutting a channel in or around its off-season, answer four questions:

  1. Is the figure counted by lead month or close month? If close month, recount it.
  2. How does the channel's share compare with its share in the same weeks last year?
  3. Did the channel's revenue fall more or less than the business's total over the same period?
  4. Is the latest month complete? If leads are still closing, mark it as provisional and leave it out of the decision.

If the channel fails all four, cut it with a clear conscience. If it fails only the first, the problem is the report.

What "the season" means in different businesses

Seasons differ in shape, and the shape decides the comparison. Some peak on the calendar, some on the weather, some on a deadline, and some on events that never repeat. The right baseline depends on which kind of season you have.

Seasonal patterns and the comparison that fits each
BusinessWhat drives the peakWhat breaks a simple comparisonCompare against
HVACHeat and cold, often two peaks a yearA mild summer or an early frost moves the peak by weeksSame weeks last year, with the weather noted
RoofingStorms and hailStorm months do not repeat on the calendarEarlier storm events, reported separately from calm months
Tax preparationThe filing deadlineWhen documents arrive and when the deadline fallsSeason-to-date, aligned to the deadline
Tutoring and schoolsThe school yearDistrict start dates differ and moveWeeks counted from the local start date
Holiday retailThanksgiving to DecemberThanksgiving moves, shortening or lengthening the seasonWeeks counted from Thanksgiving
Real estateThe spring marketLong gap between inquiry and closingInquiries by lead month, same months last year

Two of these deserve a further word. Storm-driven trades such as roofing should not compare this June with last June at all if one had a hail storm and the other did not; that compares weather. Label the event weeks, report them as their own period, and judge a channel by its share of storm work against its share of earlier storm work. And real estate stacks a seasonal peak on top of a long cycle, so a spring inquiry may close in summer or the following year. Count it by lead month, or the spring campaign will be credited in a quiet August.

For field trades in general, our post on field services covers the other half of the problem: when crews are fully booked in a peak, more marketing cannot become more revenue, and measured performance falls for reasons that have nothing to do with the channel.

Reporting a seasonal business honestly

A seasonal channel report shows each channel against the same season last year, counts sales by the month the lead arrived, gives each channel's share beside its revenue, marks the latest month as incomplete, and keeps unmatched revenue as its own line rather than spreading it across channels.

  • Two columns for every channel: this season and the same season last year. Month-over-month goes in an appendix, for spotting breakage.
  • Revenue by lead month, with the latest months marked provisional. The report says how many weeks it takes for most of a month's leads to close.
  • Share of revenue beside revenue. Including the unattributed share, so a change in recording is visible as a change, not hidden inside the channels. Our post on unattributed revenue covers why that bucket stays visible.
  • A line for what was unusual. Weather, events, a moved holiday, a capacity limit. Two sentences of context save an argument.
  • A rolling twelve months. One figure per channel that includes every season once, so the trend is visible without any season dominating it.

CloseRev matches closed sales to leads by normalized phone number and email, from two CSV exports you provide: your closed sales and your lead sources. Each matched sale is credited to the source written in the lead file, and sales with no match go to Direct / Unknown. It does no seasonal adjustment and no forecasting, so for the season-against-season comparisons above, export the same weeks from each year and compare the two results, with the lead export reaching back far enough to cover the time your customers take to buy.

For anyone reporting upward, our post on board reporting argues for holding the method constant and stating coverage. Seasonal businesses need both more than most, because a board sees the slow quarter every year and will ask the same question every year. Answering it with last year's slow quarter beside this one ends the conversation quickly.

What to do before the next peak

Before the next busy season, set the baseline: pull last year's same season by channel, measure how long your leads take to close, and agree in advance which comparison the season will be judged on. Decisions made during a peak or a lull on numbers chosen afterwards are the ones that go wrong.

  1. Measure your lag. Take last season's sales and the date of each customer's first lead. Find how many weeks it takes for most of a month's leads to close. That number tells you how long a month stays provisional.
  2. Build last year's season by channel. Same weeks, same method, aligned to whatever drives your peak. This is the column every report will be read against.
  3. Agree the comparison in writing. Same season last year, by lead month, with share beside revenue. Agree it before the results arrive, so nobody chooses the comparison that suits them.
  4. Decide what would make you cut a channel. A share loss larger than the season's, sustained over complete months, compared with the same weeks last year. Anything less is a conversation, not a cut.
  5. Use the off-season to test. Run a pause test where volumes are low and the answer is cheap, and carry the result into the peak.

Seasons move every channel at once, and booked revenue trails every turn by a few weeks. Compare with the same season last year, count by lead month, judge share beside revenue, and make channel decisions on complete months, never on the first weak numbers of a slow season.

Questions people actually ask

Why are month-over-month marketing comparisons misleading?
Because in a seasonal business most of the change from one month to the next is the season, not the marketing. US retail sales, unadjusted, fell about 19% from December 2025 to January 2026; adjusted for season, they fell under 1%. A channel report has no seasonal adjustment, so a January drop says little about the channels until you compare it with last January.
Should I compare marketing results year over year or month over month?
Year over year for judging a channel, month over month only for spotting something broken this week. Compare the same season with the same season, on the same method, and align the calendar where it moves: a holiday, a filing deadline or a school start that fell in a different week changes the comparison more than most campaigns do.
Should I cut marketing in the off-season?
Possibly, but not on the revenue booked in the off-season's first months. Sales close after the lead arrives, so revenue in a slow month partly reflects the busy month before it, and revenue as demand returns reflects the lull. Judge the off-season by the leads each month produced and what those leads went on to buy, compared with the same months last year.
What is channel share and why use it instead of revenue?
Channel share is a channel's matched revenue as a percentage of all revenue in the same period, including the unattributed part. Seasons move every channel's total together, so the raw figure mostly tracks demand. Share asks whether the channel won more or less of whatever demand there was, which is the question a budget decision actually needs answered.
How do storms or weather events affect marketing attribution?
They create demand that no campaign caused and that does not repeat on the calendar, so even a year-over-year comparison can mislead. For storm-driven trades such as roofing, label the event months, report them separately and compare a channel's share during events with its share during earlier events, rather than comparing this June with last June.

See it on your own numbers.

Two exports and a few minutes. 14 days free, no card, nothing to install.