Sections: the block-by-block anatomy of a send

Newsletrix names the content blocks each analysed email was built from, top to bottom. Sections answers two questions about one brand: how often each block appears, and where in the email it sat. Open it when you are reverse-engineering a competitor's template, or checking whether your own has drifted.

All plans Sidebar: Insights AI-extracted block names
Where
Sidebar: Insights / Sections
App route
/newsletter-structure
Answers
Which blocks appear, and in what order
Needs
8 to 10 analysed sends per brand
Updates
Live, on every filter change

What this screen is

The sidebar calls it Sections. Open it and the page is headed Newsletter structure per brand, under a subtitle reading "Section consistency, occupancy, order stability, and structural metrics per brand." You come here to see a brand's template skeleton without opening thirty emails one at a time.

Newsletrix reads each analysed email as a stack of named blocks, with names like hero, product_grid, category_cta, blog_teaser and footer. Sections gives you two views of that stack. Occupancy tells you how often each block shows up across the editions inside your filter, and the consistency heatmap tells you where each block sat inside each edition, as a position number on a coloured cell.

Those names are Newsletrix's own reading of the email's visual structure. They are not labels the sender wrote. Nothing fixes the vocabulary, so each block gets whatever label suits it, and two similar emails can end up with different names for the same block. Most of the odd numbers on this screen trace back to that.

Opens and clicks are not here. Newsletrix receives these emails as an ordinary subscriber, so it can describe what a sender chose to build and nothing at all about how their audience reacted. Despite the word "stability" in the subtitle, no stability score appears anywhere on the screen either.

Use it one brand at a time. Leaving the Brand filter on "All brands" pools every sender you track into a single denominator, which flattens every occupancy percentage and mixes unrelated templates into one heatmap.

Open it when

  • You are reverse-engineering a competitor's newsletter template before designing your own.
  • A brand's emails feel inconsistent and you want proof of which blocks are permanent fixtures and which were one-off experiments.
  • You are deciding where to place a new block, such as a product grid, blog teaser or referral module, and want to see where competitors put theirs.
  • You need to show a client or a team the ordered anatomy of one brand's newsletter over the last quarter.
  • You suspect a template redesign: a block that used to sit at position 2 now sits at position 6, or has stopped appearing entirely.

Screen anatomy

The page is a single column. Header at the top, then the filter card, four tiles, the occupancy chart, and the heatmap at the bottom. Numbers on the mock match the walk-through underneath it.

app.newsletrix.com/newsletter-structure
Newsletter structure per brand

Section consistency, occupancy, order stability, and structural metrics per brand.

? More information
1
Brand: All brands Date from: 2026-06-01 Date to: 2026-09-05
2
Total editions
128
Analysed sends in filter
Avg sections / edition
6.4
Block rows per email
3
Avg links / section
4.7
All links / all blocks
Unique sections
23
Distinct block names
4
Section occupancy across editions (top 10)Occupancy %
Shows how frequently each section appears in newsletters (percentage of total editions)
footer100
hero96.9
product_grid88.3
category_cta71.1
blog_teaser42.2
social_follow30.5
unsubscribe_block21.9
seasonal_banner14.8
referral_module9.4
survey_prompt5.5
5 6
Section consistency heatmap (section × edition)
Visualizes which sections appear in which newsletter editions. Darker colors indicate section presence at specific positions.
SectionSep 3, 2026Aug 27, 2026Aug 20, 2026Aug 13, 2026Aug 6, 2026
hero11121
product_grid22332
blog_teaser454
footer66776
Newsletter structure per brand. The filter card, the four structure tiles, the top ten blocks by occupancy and the position heatmap for the five most recent editions. Chip shades stand in for the app's four-step indigo ramp. Numbers match the list below.
  1. Filter card Three fields side by side. Brand is a dropdown that starts on the placeholder "All brands"; Date from and Date to are date pickers, both empty by default. There is no Apply button, so every change reloads the whole page immediately.
  2. Total editions The denominator for everything else on the screen. If it reads 128, a block at 100% occupancy appeared in all 128 of those emails.
  3. Avg links / section Total links in the emails divided by the total number of blocks listed. Two unrelated totals, one over the other. No link is ever attributed to a specific block anywhere in Newsletrix.
  4. Section occupancy across editions (top 10) Horizontal bars, one per block name, sorted by how many editions contain it and cut to the ten most frequent. The axis runs 0 to 100 and never goes past it.
  5. Section consistency heatmap (section × edition) Blocks as rows, edition dates as columns, newest edition on the left. The number in a cell is the block's position inside that edition, counting from 1. Darker means earlier.
  6. Short rows shift left A row only holds cells for the editions where that block appeared, so blog_teaser here has three cells against five date columns and they do not line up with the dates above them. Read each row as a sequence of appearances rather than a calendar.
  7. Page header and help button The title, the subtitle, and a round question-mark button on the right. It opens a fixed explainer called "Structure That Drives Results".
  8. Avg sections / edition and Unique sections The other two tiles. The first is the mean number of blocks per email; the second is how many distinct block names exist in the filtered set. Compare them to each other rather than in isolation.
  9. Loading state While the screen is loading, everything below the filter card is replaced by a single spinner. With no Apply button, typing a date by hand can set off several of these one after another.
  10. Empty state With nothing matching, the four tiles read 0, the occupancy card keeps its heading and its 0 to 100 axis but draws no bars, and the heatmap card disappears completely. There is no illustrated empty screen.

Every panel explained

Total editions

How many newsletter editions fall inside the current brand and date filter.

How it is calculated. One count per distinct analysed email inside the filters. An email only counts once its analysis has finished, so newsletters that have arrived but not yet been analysed are invisible here. Editions that produced no blocks at all still count.

How to read it. Treat it as the denominator for every percentage on the page. Below roughly 8 to 10 editions, occupancy becomes coarse: over 3 editions the only possible values are 33.3, 66.7 and 100.

Empty analyses still count

When the analysis finds no blocks in a send, that send still appears in Total editions and still sits in the denominator. It drags every occupancy percentage down without ever showing up as a bar or a heatmap row.

Avg sections / edition

The mean number of blocks in an email inside the current filter.

How it is calculated. Every block from every edition is counted, then divided by Total editions and rounded to one decimal. Repeats count. A block name that appears twice inside one email adds two.

How to read it. A rough measure of template length. Four to six is a compact email; twelve or more is a long newsletter assembled from many independent modules.

Avg links / section

A link-density figure for the average block.

How it is calculated. All links found in the emails inside the filters, divided by every block listed in those same emails, rounded to one decimal. No link is left out of the top of that fraction.

How to read it. High values point to product-grid-heavy templates. Low values point to editorial blocks with a single call to action. Compare brands with the same date range rather than reading the absolute number.

This is a ratio of two unrelated totals

Links are never attributed to individual blocks anywhere in Newsletrix, so nothing here measures one block on its own. Every link counts, unsubscribe and preference centre and social icons included. An email where no links were found contributes nothing to the top of the fraction while still adding its blocks to the bottom, so the figure can read low for reasons that have nothing to do with design.

Unique sections

How many distinct block names exist across the filtered set.

How it is calculated. A count of distinct names, exactly as they appear. It is case-sensitive, and near-identical names are never merged.

How to read it. Always read it against Avg sections / edition. Close together means one fixed template. Several times larger means either the brand improvises every send, or the same block is picking up a different label from one email to the next. The occupancy chart separates the two. Genuine variety leaves a long tail of distinct names; naming drift leaves near-duplicates such as hero and hero_banner.

No vocabulary, no merging

hero, Hero and hero_banner are three entries in this tile. There is no in-app way to merge or rename them, so the number inflates whenever the labelling is inconsistent.

Section occupancy across editions (top 10)

For each of the ten most frequent blocks, the share of editions that contain it.

How it is calculated. For every distinct block name, count how many editions contain it at least once, divide by Total editions, multiply by 100 and round to one decimal. Blocks are sorted by raw appearance count, descending, and the chart draws only the first ten. The axis runs from 0 and stops at 100.

How to read it. Split the bars into three bands. Anything at or near 100% is the brand's fixed furniture, usually the header, the hero and the footer. Between roughly 20% and 60% sit the situational blocks, tied to campaigns, seasons or whatever content existed that week. Under 10% you are looking at an experiment, or at naming noise from a single send. A block sliding out of the top band across two consecutive quarters is the clearest early signal of a template change you will get here.

Only ten bars, ever

The chart is capped at the ten most frequent blocks. A rare but strategically interesting module, a referral widget or a survey block, will simply not appear if ten other blocks beat it on raw count. Narrow the date range or the brand to bring it into view.

Section consistency heatmap (section × edition)

A matrix with blocks as rows and editions as columns, newest edition first. Each cell carries the position of that block inside that edition.

How it is calculated. Column headers are the send dates of the editions in scope, formatted like "Mar 14, 2026", each with a hover title showing the date and the subject line. A cell's number is the block's place in that edition, counting from the top. Colour follows that position in four fixed steps. Positions 1 to 3 take the darkest indigo, 4 to 5 mid, 6 to 7 light, 8 and beyond the palest. Hovering shows "Position: N". The grid scrolls horizontally, gains its own vertical scroll once the rows outgrow the card, and keeps the Section column and header row pinned.

How to read it. Scan one row at a time, left to right. A run of identical dark cells carrying the same number is a block that never moves. Scattered numbers mean it floats, and gaps mean the brand skipped it that week. Columns are far less trustworthy than rows, for the reason below.

Rows are sequences, not a calendar

The header prints one column per edition, but each row only contains cells for the editions where that block actually appeared. Rows for blocks that skip editions are therefore shorter than the header row and their cells shift left instead of lining up under the matching date. Use the "Position: N" tooltip and read each row as an ordered sequence of appearances. If a block name repeats inside one edition, every repeat shows the position of the first occurrence.

Help modal: "Structure That Drives Results"

The round question-mark button opens a short explainer beginning "Newsletter Structure Analysis reveals how your content organization impacts reader engagement." and listing Layout Patterns, Section Organization, Visual Hierarchy, Content Density, Navigation Elements and Template Consistency.

How it is calculated. It is not. The text is fixed, identical for every account, and it never touches your data.

How to read it. As positioning, not as a metric list. Visual hierarchy, content density and template consistency are not computed anywhere on this screen.

Empty and loading states

There is no illustrated empty state. With zero matching editions you get four zeroes, an occupancy card that still shows its heading and axis but has nothing to plot, and no heatmap card.

How it is calculated. The heatmap card appears only when there is at least one block to draw, so it vanishes rather than showing an empty grid. The four tiles behave differently again. They are hidden outright when the screen fails to load, so a failure shows no tiles at all rather than zeros, and nothing on screen announces it. The grey line "No data available" belongs to that failure, not to a genuinely empty result. It stands in for the chart while nothing has loaded.

How to read it. Four zeroes with an empty chart almost always mean the filter is too tight, or that the sends in that window have not been analysed yet. No tiles at all, with "No data available" where the chart should be, means the screen never finished loading. Reload the page.

app.newsletrix.com/newsletter-structure
Brand: Rockahula Kids Date from: 2026-09-01 Date to: 2026-09-05
Total editions
0
Avg sections / edition
0
Avg links / section
0
Unique sections
0
Section occupancy across editions (top 10)Occupancy %
Shows how frequently each section appears in newsletters (percentage of total editions)
0255075100
Empty result. One brand and a five-day window with no analysed sends: four zeroes, an occupancy card that keeps its heading and its 0 to 100 axis but plots nothing, and no heatmap card at all.

Metric definitions

MetricWhat it meansHow it is producedScale
Total editionsAnalysed newsletters inside the current filtersOne count per distinct analysed email inside the filters; not-yet-analysed emails excluded, block-less analyses includedWhole number, 0 and up
Avg sections / editionMean number of blocks per emailEvery block listed inside the filters divided by Total editions, rounded to 1 decimal; repeated names counted twiceDecimal, 1 place
Avg links / sectionLink density per average blockAll links found in the emails divided by every block listed, rounded to 1 decimal; every link counts, unsubscribe and social links includedDecimal, 1 place
Unique sectionsDistinct block names in scopeCount of distinct names, case-sensitive; never merged or renamedWhole number, 0 and up
Occupancy %Share of editions containing a blockEditions containing the block divided by Total editions, times 100, rounded to 1 decimal0 to 100, axis capped at 100
PositionWhere a block sat inside one editionIts place in that edition, counting from the top; a repeated name reports the first occurrenceWhole number, 1 and up
Cell colourVisual shorthand for positionFour fixed bands. Positions 1 to 3 darkest indigo, 4 to 5 mid, 6 to 7 light, 8 and beyond palest4 bands
Section nameThe block label itselfThe name Newsletrix gave the block, kept in the order the blocks appear in the emailText

Filters and controls

ControlWhat it doesDefault
BrandRestricts every tile, the chart and the heatmap to one sender. The list holds every brand you track, ordered by how many newsletters you have from eachEmpty, shown as "All brands"
Date fromExcludes editions sent before this dateEmpty (no lower bound)
Date toExcludes editions sent after this dateEmpty (no upper bound)
Auto-refreshThere is no Apply or Refresh button. Any change to any of the three fields reloads the whole screen immediatelyAlways on
Workspace selectorThe global dropdown in the sidebar. It narrows the screen to the newsletters delivered to tracking addresses carrying that group labelEmpty, meaning all workspaces
Help buttonOpens the fixed "Structure That Drives Results" explainer as a dialog; dismiss it with its own close controlClosed

Some controls are deliberately absent, so you can stop hunting for them. Sections has no export of any kind, no sort control, no search box or section-name search, no date presets such as "Last 30 days", and no way to select more than one brand at once. For a downloadable version of the same underlying data, use the Newsletter section flows drill down table on the Structures screen, which has an Export CSV button.

A brand new sender can lag by up to ten minutes

Every figure on this screen updates the moment you change a filter, so nothing here goes stale. The Brand dropdown is the exception. A sender whose first newsletter has just been analysed can take up to ten minutes to become selectable.

How to use it

  1. Pick one brand, then a window with enough sends Set Brand to a single sender and set Date from and Date to so that Total editions reads at least 8, ideally 10 or more. Below that, occupancy percentages jump in coarse steps and tell you very little.
  2. Read the four tiles as one template profile Avg sections / edition gives template length. Compare it with Unique sections: close together means one fixed template, several times larger means variety or inconsistent naming. Keep Avg links / section as a cross-brand density figure, not a block-level fact.
  3. Sort the occupancy bars into three bands Near 100% is fixed furniture, 20% to 60% is situational, under 10% is experiment or noise. Write down the fixed set. That list is the brand's actual template, whatever their design system claims.
  4. Move to the heatmap and read rows, not columns For each block in your fixed set, check whether its position number is stable. A block that is always 1 or always 2 is anchored. A block whose number wanders between 3 and 8 is placed by whoever built that send.
  5. Re-run the same brand on the previous quarter Change only the two date fields. A block that moved bands, or a position number that shifted by three or more, is a template redesign you can date to within a few sends.
  6. Take the fixed set into your own template review Compare the blocks a competitor ships in every email with the ones you ship occasionally. Those gaps are the cheapest structural changes available to you.
Tip

Run two brands through the same date range back to back and screenshot each occupancy chart. Two charts side by side make a template comparison a client can read in five seconds, which is something neither chart does on its own.

Limits and caveats

  • Block names and their order come from Newsletrix reading the email's visual structure, not from labels the sender wrote. Two similar emails can end up with different names for the same block.
  • Avg links / section is a ratio of two separate totals. No link is attributed to a specific block anywhere in the product, and the link count includes unsubscribe, preference-centre and social links.
  • The occupancy chart shows only the ten most frequent blocks. Everything else is invisible on this screen.
  • Heatmap rows hold one cell per appearance, not one per edition, so rows with gaps shift left and stop aligning with the date headers above them.
  • A block name repeated inside one email reports the position of its first occurrence for every repeat.
  • Emails that have not been analysed are excluded entirely. Emails where no links were found still count their blocks, which pulls Avg links / section down.
  • Nothing on this screen is a performance measurement. Newsletrix subscribes to these newsletters like any other reader and cannot see another sender's opens or clicks.

FAQ

Where do the section names come from, and can I edit them?

They come from Newsletrix's own AI reading of each email. Every send is named block by block, top to bottom, with labels like hero, product_grid, category_cta, blog_teaser and footer, and every tile, bar and heatmap cell on this screen comes from those names in that order. There is no in-app renaming, merging or editing of section names.

Why does Unique sections look so high?

Because nothing fixes the vocabulary and the tile is a plain case-sensitive count of distinct names that are never merged. Hero, hero and hero_banner count as three. A high number can mean genuinely varied templates, or simply inconsistent labelling across sends.

The heatmap cells do not line up under the dates. Is that a bug?

No. It is a known limitation of the grid. The header row prints one column per edition, but each section row only holds cells for the editions where that block actually appeared, so shorter rows shift left. Read every row as an ordered left to right sequence of appearances and rely on the Position tooltip on the cell, not on the date above it.

What does the number inside a heatmap cell mean?

It is the block's position inside that edition, counting from 1 at the top of the email. A 1 means it was the first block in the email. Colour encodes the same thing in four steps. Positions 1 to 3 are the darkest indigo, 4 to 5 mid, 6 to 7 light, and 8 and beyond the palest.

Why does a section show less than 100 percent occupancy when I know it is always in the email?

Occupancy is the count of editions containing the block divided by every analysed edition inside your filters. That denominator includes sends that produced no blocks at all, and, if Brand is left on All brands, every other sender too. Narrow to one brand and a tighter date range before trusting the percentage.

Can I export this screen?

Not from here. There is no export control on Sections. For a downloadable version of the same underlying data, open the Structures screen and use the Newsletter section flows drill down table, which has an Export CSV button.