Sign in

Blog · Finance metrics and formulas

Same-store sales growth: formula and comparable cohorts

Same-store sales growth compares a fixed group of eligible stores across matched periods. Define the cohort, calculate the weighted growth rate and reconcile openings, closures and remodel exclusions to total company sales.

The short answerSame store sales growth is the percentage change in net sales for the same eligible stores over matched periods. Divide current-period cohort sales by prior-period cohort sales, then subtract one. Set the eligibility rule and exclusions before calculating. Keep openings, closures and excluded remodels outside both cohort totals, and reconcile their sales changes separately to total company growth.

Same store sales growth measures the sales change for a fixed group of stores that qualify in both comparison periods. Calculate it from the cohort's total net sales, rather than averaging individual store growth rates. Then explain openings, closures and other excluded stores in a separate bridge to company sales.

The most consequential part is the cohort definition. A correct formula applied to different store populations can still produce a misleading growth rate.

The formula and the population it measures

Same-store sales growth = (Current-period net sales for the comparable cohort / Prior-period net sales for the same cohort) − 1

Use net merchandise sales on a consistent basis, including the same treatment of returns, discounts and sales tax in both periods. Save the store IDs in the cohort, the dates used to determine eligibility and the reason for every exclusion. Those records make the result repeatable.

There is no universal population rule. Target's annual report describes comparable sales using equal-length periods and excludes stores open less than 13 months or already closed. It also cautions that retailers' definitions vary. Treat a company's published definition as specific to that company, rather than an industry benchmark.

Same-store sales answers how an established trading base performed. It differs from total revenue growth and from CAGR, which measures a compounded change over a longer interval without defining a store cohort.

Set eligibility and calendar rules before viewing results

For this example, a US specialty retailer adopts the following reporting policy:

  • Stores must have opened on or before January 5, 2024, and have traded throughout both comparison periods.
  • A store with a temporary remodel closure during either period is excluded from both cohort totals.
  • New and permanently closed stores remain in the company revenue report and outside the comparable cohort.
  • Sales cover stores only. Digital sales are reported separately, and the example has none.

The prior period is January 5 through February 1, 2025. The current period is January 4 through January 31, 2026. Both cover 28 days, from Sunday through Saturday, across the same four fiscal weeks.

Matching calendar dates is not always sufficient. The National Retail Federation's retail calendar guidance explains how its calendar aligns weekends and holidays for comparable reporting. Follow your own fiscal calendar and disclose any holiday shift or extra-week adjustment. Do not silently compare a longer trading period with a shorter one.

Approve exclusions before inspecting store performance. Otherwise, removing a weak location as an exceptional item can turn a reporting rule into a way to improve the headline.

Work the fixed cohort from store rows

Stores A, B and C satisfy the policy. New opened on June 1, 2025. Closed ceased trading on March 31, 2025. Remodel temporarily closed during January 11 through January 17, 2026. Their sales remain visible even though they are ineligible for the cohort.

Store Comparable? Prior sales (USD) Current sales (USD) Sales change (USD) Store growth
A Yes 100,000 110,000 10,000 10.0%
B Yes 200,000 210,000 10,000 5.0%
C Yes 150,000 135,000 −15,000 −10.0%
New No: recent opening 0 60,000 60,000 Not applicable
Closed No: permanently closed 40,000 0 −40,000 −100.0%
Remodel No: temporary closure 50,000 30,000 −20,000 −40.0%
All stores 540,000 545,000 5,000 0.9%

Build the comparable numerator and denominator from the eligible rows only:

Step Calculation Result
Prior cohort sales (USD) 100,000 + 200,000 + 150,000 450,000
Current cohort sales (USD) 110,000 + 210,000 + 135,000 455,000
Cohort sales change (USD) 455,000 − 450,000 5,000
Same-store sales growth 5,000 / 450,000 1.1%
Total company sales growth 5,000 / 540,000 0.9%

Percentages are rounded to one decimal place after calculation. The cohort and company happen to gain the same dollar amount because the excluded groups' changes offset in this example. Their growth rates differ because they use different prior-sales bases.

Excel calculation and a weighted check

Place store IDs in column A, a clean Yes or No eligibility flag in B, prior sales in C and current sales in D. Rows 2 through 7 contain the six stores. Use the same flag for both totals:

=SUMIFS(C2:C7,B2:B7,"Yes")
=SUMIFS(D2:D7,B2:B7,"Yes")

If those totals are in C9 and D9, the growth formula is:

=IF(C9=0,NA(),D9/C9-1)

Microsoft documents SUMIFS as summing values that meet stated criteria. Use a separate eligibility register to explain the flag; the formula cannot decide whether a remodel qualifies. Excel is a Microsoft product; Covirage is not affiliated with Microsoft.

The weighted check is (100,000 × 10% + 200,000 × 5% + 150,000 × −10%) / 450,000 = 1.1%. Its numerator reconstructs the cohort's $5,000 sales change. The simple average of the three growth rates is 1.7%, which gives the smallest store the same influence as the largest.

Reconcile the cohort to total company growth

The bridge must explain every store, including excluded locations:

Bridge step Sales change (USD) Running sales total (USD)
Prior company sales 540,000
Comparable-store change 5,000 545,000
New-store change 60,000 605,000
Closed-store change −40,000 565,000
Remodel-store change −20,000 545,000

The final $545,000 matches the current-period sales table. A missing store, duplicated store ID or unexplained exclusion breaks that identity. Complete this reconciliation before discussing why the comparable rate changed.

For an international business, also define whether growth uses reported or constant currency. Currency and multi-entity roll-ups covers the reconciliation behind that separate adjustment. The present example contains only USD sales.

Where it goes wrong

  • Changing membership between columns. Using all surviving stores for current sales but the previous year's original cohort for prior sales creates different populations. Freeze a paired cohort for each comparison.
  • Ignoring missing rows. A missing store export is not a closure or a genuine zero. Check data coverage against the store register before calculating eligibility.
  • Excluding remodels after seeing results. State the temporary-closure rule and preserve excluded sales in the company bridge. Do not remove only the unfavorable period.
  • Reading sales growth as profit growth. Price, discounts and product mix can move sales without improving earnings. Revenue versus profit explains the distinction; use sales price per unit when realized pricing needs investigation.

Rebuild your store comparison in Covirage

Bring a store sales export, store opening and closure dates, a remodel exclusion list and your fiscal-period mapping. Covirage maps the columns; its tools compute and check the cohort totals and company reconciliation, and the external AI model explains the results with every figure traced to its rows. Create a free Covirage account and bring a sample of your own data.

See revenue driver analysis for the supporting growth perspective.

Questions people ask

How long must a store be open to count as comparable?

The company must define and disclose its own threshold. A policy might require a full operating year before the comparison begins, while another company uses a different age rule. Apply that policy consistently rather than assuming every retailer calculates the metric identically.

Are closed stores included in same-store sales growth?

Under the fixed-cohort method here, a store that did not trade throughout both periods is excluded from both comparable totals. Its lost sales still appear in the reconciliation to company revenue. Published company definitions can treat eligibility differently.

Does same-store sales growth measure sales volume?

It measures sales dollars unless explicitly defined otherwise. Higher prices, more transactions or a different basket mix can all change the result. Use transaction counts and realized prices alongside the metric when the decision depends on underlying unit demand.

Should online sales be included in comparable sales?

Set the channel policy before calculating. A store-only measure should keep digital sales separate; an omnichannel measure needs a consistent allocation rule across both periods. Otherwise, moving an order between fulfillment channels can change store results without changing customer demand.