Understanding Your Product Library
Last updated: July 6, 2026
Summary
When you browse your HubSpot Products, you'll notice the same program name appears many times, with similar-but-different SKUs. This is expected and, importantly, intentional. This article explains why the library looks the way it does and how to work with it — grouping instead of de-duplicating.
Why one program appears many times
A single program isn't one product — it's one product per offering. The same class is offered across multiple branches, multiple session months, and multiple sections/units, and each of those combinations is its own product record with its own SKU.
So a popular class can appear as dozens of product records: several branches × several months × several sections. They share the same program name and identity, but each carries its own branch and its own begin/end dates.
Reading a SKU
Each SKU is a composite code with a fixed structure. From left to right, its segments encode:
Product Type · Branch · Year · Period (month) · Product · Unit
The Product Type segment is the same value that drives the Program / Membership / Product distinction (see Product Types).
The Period segment is the month — which is why registration data can look like it only has "months."
The Product segment is the stable identity of the program across all its branch/month/section variants.
Don't de-duplicate — group instead
It's tempting to clean up the "duplicates," but don't delete them: those per-branch, per-session records are exactly what carry the branch and class-date detail your lists and workflows depend on (for example, class-start-date sends). Removing them would remove the granularity that makes program targeting possible.
Instead, group the variants:
For lists, filter on the program name (and branch, if you want a single location) rather than a single SKU — this captures all variants of the program. See How to Build a Program-Based List.
For reporting, group by the program's stable identity (its product name/identity) so all branch/month/section variants roll up together.
Keep the working view filtered to Product Type = "Program" so membership and fee records don't clutter your view. See Product Types.