A Figma S maps to a reusable HubSpot section template. Modules live inside the section and control editable content.
Final naming strategy
Use the object type, stable family number, mnemonic abbreviation, separator, and full searchable name. Shared modules retain their own low-number utility family.
S120MG identifies a section, family 120, and Media Grid even before the full label is visible.
Use Media Grid, not Platform Capabilities; use Alternating Media, not Use Cases.
The full label follows the pipe: S120MG | Media Grid. IDs never replace the human-readable name.
A repeated card inside one module is a nested UI component, not a standalone HubSpot picker module.
Use -A/-B only when section structure materially changes, not when content or item count changes.
T010DP | Detail PageT template · 010 stable family · DP Detail Page mnemonic.S100H | HeroS reusable HubSpot section template. Layout type is configuration or an approved suffix variant.M010SH | Section HeadingM shared editable HubSpot module reused by multiple section families.M120MG | Media GridA section-family module uses the same family number and mnemonic when it represents the complete editable block.U120MC | Media CardU nested React component or repeater item hidden from the general module picker.S175CB-B | CTA Banner — VisualSuffixes are reserved for approved structural variants, not content count or background color.S-╨íH-01 remain searchable aliases only. They should not be used for new Figma frames, HubSpot labels, folders, or Jira tasks.Mnemonic abbreviation dictionary
Abbreviations are deliberately short, uppercase, and attached to the family number. The full text label remains the source of truth for human understanding and search.
| Code | Meaning |
|---|---|
DP | Detail Page |
H | Hero |
HC | Hero Content |
HV | Hero Visual |
SH | Section Heading |
MS | Metrics Strip |
MC | Metric Card or Media Card — resolved by family number and full label |
MG | Media Grid |
FG | Feature Grid |
FC | Feature Card |
PJ | Pricing Journey |
JC | Journey Card |
AM | Alternating Media |
MR | Media Row |
AG | Asymmetric Grid |
CC | Content Card |
SP | Social Proof |
RS | Review Strip |
RB | Review Badge |
LC | Logo Cloud |
AC | Award Card |
CB | CTA Banner |
VB | Visual Board |
FA | FAQ Accordion |
FI | FAQ Item |
HubSpot implementation hierarchy
The section and module layers are both retained, even when a section contains only one primary module.
The section governs background, width, rows, columns, spacing, responsive order, and approved module placement.
The module owns editable fields, repeaters, images, links, rich text, and behavior. Internal-only modules can be hidden from the picker.
Cards and items rendered by a repeater are nested React components. Editors manage them through the parent module.
Content managers should primarily use Add section, then edit the contained modules without rebuilding the layout manually.
Template family
The attached Industry page becomes an approved instance of a more reusable detail-page template.
T010DP | Detail Page
Reusable long-form page template for industry, solution, persona, use-case, and product-detail narratives. Global header and footer remain inherited from the base layout; approved sections are inserted inside the drag-and-drop area.
T010DP / Detail Page / DesktopT010DP | Detail Pagetemplates/t010dp-detail-page.hubl.htmlcomponents/pages/T010DPDetailPageReusable section registry
Each card below documents the agreed registry entry and renders compact previews from the real HubSpot section partials and React modules instead of screenshot assets.
S100H | Hero
S-H-01, S-H-02; S100H | HeroGeneral hero section family supporting split, centered, text-only, and visual-led compositions without encoding one layout into the canonical name.
Hero is the reusable family. Split composition presentation is a controlled layout option or structural variant. The optional visual is named Hero Visual because it may contain a dashboard, illustration, image, animation, or video—not only a product screenshot.
S100H | HeroAdd sectionContained HubSpot modules
M100HC | Hero ContentEyebrow, heading, description, heading, description, optional primary CTA, alignment, and content width.M100HV | Hero VisualEditable image or dashboard visual with alt text and optimized responsive output.
S100H / Hero / Base; optional layout variantssections/S100H-Hero.hubl.htmlmodules/M100HCHeroContent; modules/M100HVHeroVisualhero, split hero, centered hero, visual hero, banner, CTAS110MS | Metrics Strip
M-N01, M-N01-2, M-N01-3, M-N01-4; M110ML | Metrics ListSingle-row proof or KPI section containing repeatable metric cards and responsive stacking behavior.
The section and parent module use the same clear name. Each repeatable unit is consistently classified as a Metric Card, while two to five cards remain configuration rather than separate variants.
S110MS | Metrics StripAdd sectionContained HubSpot modules
M110MS | Metrics StripRepeatable metrics collection controlling columns, dividers, alignment, responsive wrapping, and optional card icons.
Nested React UI components / repeater items
U110MC | Metric CardMetric value, stat label, optional qualifier, description, and optional icon.
S110MS / Metrics Strip / Basesections/S110MS-Metrics-Strip.hubl.htmlmodules/M110MSMetricsStrip; components/U110MCMetricCardmetrics strip, KPI, stats, numbers, proof, metric cardsS120MG | Media Grid
S-D-01, S-D-02, D02; M-D-01, M-D-03, M-D-04General image-led card grid for capabilities, services, product areas, categories, benefits, or related content.
Page-specific wording such as Platform Capabilities is removed. One shared Section Heading module provides the title and description, while the Media Grid module owns the repeatable cards.
S120MG | Media GridAdd sectionContained HubSpot modules
M010SH | Section HeadingShared heading module: optional eyebrow, title, description, heading level, alignment, and content width.M120MG | Media GridRepeatable media cards, column count, card alignment, image ratio, and responsive behavior.
Nested React UI components / repeater items
U120MC | Media CardImage or media, title, description, optional text link, and optional CTA.
S120MG / Media Grid / Basesections/S120MG-Media-Grid.hubl.htmlmodules/M010SHSectionHeading; modules/M120MGMediaGrid; components/U120MCMediaCardmedia grid, media cards, image cards, capabilities, services, categoriesS130FG-A/B | Feature Grid
S-I-01, S-I-02; M-I-01…M-I-16Icon-led or text-led feature grid for benefits, principles, differentiators, reasons, or service attributes.
The card schema is shared. Standard and Extended are approved structural section variants; card count, content length, and optional fields do not create new component families.
S130FG-A/B | Feature GridAdd sectionContained HubSpot modules
M010SH | Section HeadingShared title and description above the grid.M130FG | Feature GridRepeatable features plus a restricted standard/extended layout configuration.
Nested React UI components / repeater items
U130FC | Feature CardOptional icon, eyebrow, title, description, and optional link.
S130FG-A / Feature Grid / Standard; S130FG-B / Feature Grid / Extendedsections/S130FG-B-Feature-Grid-Extended.hubl.html; Standard is rendered through the same M130FG configurationmodules/M130FGFeatureGrid; components/U130FCFeatureCardfeature grid, benefit cards, icon cards, reasons, differentiatorsS140PJ | Pricing Journey
S-PJ-01, S-PJ-02; M-PJ-*; S140JS | Journey StepsConnected pricing stages for the Competera pricing journey, maturity model, or related pricing transformation narrative.
The current component is specifically designed and implemented for the pricing journey, so the final agreed name remains Pricing Journey. Repeated stages are Journey Cards.
S140PJ | Pricing JourneyAdd sectionContained HubSpot modules
M010SH | Section HeadingShared title and description above the journey.M140PJ | Pricing JourneyOrdered repeatable journey stages, connectors, and responsive orientation.
Nested React UI components / repeater items
U140JC | Journey CardStage icon, title, description, supporting text, and optional link.
S140PJ / Pricing Journey / Basesections/S140PJ-Pricing-Journey.hubl.htmlmodules/M140PJPricingJourney; components/U140JCJourneyCardpricing journey, pricing maturity, journey cards, stages, roadmapS150AM | Alternating Media
S-CH-01; M-CH-01…M-CH-06; Zigzag MediaProfessional alternating text-and-media layout for use cases, features, stories, workflows, outcomes, or process explanations.
Alternating Media is the canonical industry-standard name. The module automatically alternates media position, while each repeated full-width unit remains a Media Row.
S150AM | Alternating MediaAdd sectionContained HubSpot modules
M010SH | Section HeadingShared title and description above the rows.M150AM | Alternating MediaRepeatable rows with automatic left/right sequencing and controlled responsive order.
Nested React UI components / repeater items
U150MR | Media RowRich text, optional eyebrow, title, CTA, image or video, and media alignment.
S150AM / Alternating Media / Basesections/S150AM-Alternating-Media.hubl.htmlmodules/M150AMAlternatingMedia; components/U150MRMediaRowalternating media, alternating rows, zigzag layout, image and text, split contentS160AG-L/T | Asymmetric Grid
Case Studies grid; Frame 2610069; S180EM | Editorial MosaicShared asymmetric content-card family for case studies, articles, news, podcasts, glossary entries, campaigns, and other featured editorial content.
Editorial Mosaic is not a separate component family because it reuses the same asymmetric layout. Logo Overlay and Text Overlay are controlled section variants using one module and one Content Card component.
S160AG-L/T | Asymmetric GridAdd sectionContained HubSpot modules
M010SH | Section HeadingShared title, description, and optional archive link.M160AG | Asymmetric GridRepeatable cards, featured placement, overlay mode, source mode, and responsive grid geometry.
Nested React UI components / repeater items
U160CC | Content CardImage, tag, title, excerpt, optional logo, result data, metadata, and link.
S160AG-L / Asymmetric Grid / Logo Overlay; S160AG-T / Asymmetric Grid / Text Overlaysections/S160AG-L-Asymmetric-Grid-Logo-Overlay.hubl.html; sections/S160AG-T-Asymmetric-Grid-Text-Overlay.hubl.htmlmodules/M160AGAsymmetricGrid; components/U160CCContentCardasymmetric grid, editorial grid, case studies, resources, articles, podcasts, newsS170SP-A/B | Social Proof
S-ACH-01; review strip, logo cloud, results metrics, awardsTrust-building section family combining reviews, logos, measurable results, awards, certifications, and proof statements.
Reviews and Results are structurally different section variants but belong to one Social Proof family. Existing reusable Logo Cloud and Metrics Strip modules are composed rather than duplicated.
S170SP-A/B | Social ProofAdd sectionContained HubSpot modules
M170RS | Review StripCompact review-platform pill or badge strip used by the Reviews variant.M170LC | Logo CloudExisting shared logo-scroller module with the Social Proof editor label.M010SH | Section HeadingShared heading used by the Results variant.M110MS | Metrics StripReused quantitative metrics row used by the Results variant.M170SP | Social ProofRepeatable award, certification, analyst, or proof cards.
Nested React UI components / repeater items
U170RB | Review BadgeReview-platform logo, rating, review count, and supporting trust text.U110MC | Metric CardReused metric unit from the Metrics Strip family.U170AC | Award CardAward or certification icon, title, supporting text, and optional link.
S170SP-A / Social Proof / Reviews; S170SP-B / Social Proof / Resultssections/S170SP-A-Social-Proof-Reviews.hubl.html; sections/S170SP-B-Social-Proof-Results.hubl.htmlmodules/M170RSReviewStrip; modules/LogoCloud as M170LC; modules/M110MSMetricsStrip; modules/M170SPSocialProofsocial proof, reviews, logo cloud, results, awards, certifications, trustS175CB-A/B | CTA Banner
M-CTA, M-CTA-01; S175GC | Gradient CTA; S176VC | Visual CTAReusable conversion banner with shared content and two controlled structures: Standard and Visual.
Gradient is a background style, not a separate component family. Both layouts use one CTA Banner module; the Visual variant adds an optional Visual Board. Background style remains a module setting.
S175CB-A/B | CTA BannerAdd sectionContained HubSpot modules
M175CB | CTA BannerEyebrow, heading, description, primary and optional secondary CTA, background style, and optional visual data.
Nested React UI components / repeater items
U175VB | Visual BoardExtended dashboard, product, image, or campaign visual used only by the Visual section variant.
S175CB-A / CTA Banner / Standard; S175CB-B / CTA Banner / Visualsections/S175CB-A-CTA-Banner-Standard.hubl.html; sections/S175CB-B-CTA-Banner-Visual.hubl.htmlmodules/M175CBCTABanner; components/U175VBVisualBoardCTA banner, conversion banner, visual CTA, gradient CTA, call to actionS190FA | FAQ Accordion
S-FAQ-01; WideFaqSectionAccessible accordion section for frequently asked questions, product details, implementation notes, or structured disclosure content.
The purpose is already general. The existing FAQ implementation is reused with the editor-facing M190FA label; each repeated accordion entry is a FAQ Item.
S190FA | FAQ AccordionAdd sectionContained HubSpot modules
M190FA | FAQ AccordionSection heading, repeatable questions and answers, schema settings, and accessible interaction behavior.
Nested React UI components / repeater items
U190FI | FAQ ItemQuestion, rich-text answer, expanded state, and accessibility bindings.
S190FA / FAQ Accordion / Basesections/S190FA-FAQ-Accordion.hubl.htmlmodules/WideFaqSection with editor label M190FA | FAQ Accordion; nested U190FI itemFAQ, accordion, questions, disclosure, supportRegistry summary
Compact cross-system reference for design, development, QA, content operations, and Jira task naming.
| Section template | Contained modules | Nested UI | Search keywords |
|---|---|---|---|
| S100H | Hero | M100HC | Hero ContentM100HV | Hero Visual | — | hero, split hero, centered hero, visual |
| S110MS | Metrics Strip | M110MS | Metrics Strip | U110MC | Metric Card | metrics, KPI, stats, proof |
| S120MG | Media Grid | M010SH | Section HeadingM120MG | Media Grid | U120MC | Media Card | media grid, capabilities, services, cards |
| S130FG-A/B | Feature Grid | M010SH | Section HeadingM130FG | Feature Grid | U130FC | Feature Card | features, benefits, icon cards |
| S140PJ | Pricing Journey | M010SH | Section HeadingM140PJ | Pricing Journey | U140JC | Journey Card | pricing journey, maturity, stages |
| S150AM | Alternating Media | M010SH | Section HeadingM150AM | Alternating Media | U150MR | Media Row | alternating media, zigzag, image and text |
| S160AG-L/T | Asymmetric Grid | M010SH | Section HeadingM160AG | Asymmetric Grid | U160CC | Content Card | case studies, resources, articles, news |
| S170SP-A/B | Social Proof | M170RS | Review StripM170LC | Logo CloudM010SH | Section HeadingM110MS | Metrics StripM170SP | Social Proof | U170RB | Review BadgeU110MC | Metric CardU170AC | Award Card | reviews, logos, results, awards, trust |
| S175CB-A/B | CTA Banner | M175CB | CTA Banner | U175VB | Visual Board | CTA, conversion, gradient, visual |
| S190FA | FAQ Accordion | M190FA | FAQ Accordion | U190FI | FAQ Item | FAQ, accordion, questions |
Implementation rules
Use these rules when creating the actual Figma components, HubSpot section templates, React modules, nested UI components, and content documentation.
HubSpot section labels
- Use
S###XX | General Name, orS###XX-A/B | Variant Namefor approved structural variants. - Section files use the exact registry filename, for example
S120MG-Media-Grid.hubl.html. - The section controls layout and inserts approved modules.
- Content managers should not rebuild the composition from raw modules.
HubSpot module labels
- Use
M###XX | General Name. Shared utility modules may use the reservedM000–M099range. - Keep labels concise enough for the module picker.
- Hide section-only modules with
is_available_for_new_content: false. - Never use reserved field names such as
label.
React and CSS
- Use PascalCase folders such as
M120MGMediaGrid. - Nested items use
U-prefixed component names. - CSS uses a semantic
cmp-namespace. - Do not add translate-up hover movement unless explicitly approved.
Figma and governance
- Use slash-separated paths such as
S120MG / Media Grid / Base. - Record old aliases in the central registry.
- Do not reuse retired IDs.
- Use A/B only for structural variants validated on desktop and mobile.















Trusted by 50+ organizations across the globe