Skip to content

What's inside the newsletter from Cabaïa

Sender
contact@cabaia.fr
Sending platform
Klaviyo
Sector
Fashion & retail
Emails read
2 campaigns, 1 transactional
Period
October 2026

Our address was subscribed in August 2026, after the CNIL recommendation was published (April 14, 2026).

Overall score

The main finding

An open-tracking pixel is present on all 2 campaigns.

It is the first of 10 points to fix. The highest score is deliverability (100/100), the lowest technical (35/100), better than 0% of the 503 brands measured.

One email when a criterion changes state: the Pro version, in early access.

PDF
Share

Share this report

A single message, written by us. Their address is used for this message only and is not added to any list.

10 points to fix

Each line leads to the criterion in its family, with the excerpt that establishes it and how to fix it.

  1. Priority An open-tracking pixel is present Criterion “No open-tracking pixel” Compliance on all 2 campaigns −30 pts out of 30
    <img src="https://trk.cabaia.fr/wf/open?upn=***

    Klaviyo: open tracking is set per campaign and per flow, in the tracking settings.

  2. Priority The HTML exceeds Gmail's clipping threshold Criterion “HTML under Gmail's clipping threshold” Technical on all 2 campaigns −25 pts out of 25

    Weight comes down by removing unused CSS, deleting duplicated hidden blocks (mobile and desktop versions of the same content), removing comments and Outlook conditional code that is no longer needed, and embedding no base64 images.

  3. Priority Layout tables nested beyond the threshold Criterion “A shallow template” Technical measured on 2 campaigns −20 pts out of 20

    Flatten the template: one content block per table, placed directly in the main column, with no wrapper table around each section.

  4. Priority The recipient's address is written into the message Criterion “No recipient identifier in the message” Compliance on all 2 campaigns −10 pts out of 10
  5. To review Preheader missing, too short or too long Criterion “The message makes sense without its images, from the inbox on” Experience measured on 2 campaigns −18.8 pts out of 25
  6. To review The message puts obstacles in the way of assistive technology Criterion “The message stays readable with assistive technology” Experience measured on 2 campaigns −15 pts out of 20
  7. To review No untracked path leads to the site Criterion “An untracked path leads to the site” Compliance on all 2 campaigns −10 pts out of 10
  8. To review A remote stylesheet is called Criterion “No remote stylesheet” Technical on all 2 campaigns −10 pts out of 10
  9. Secondary No link leads to the privacy policy Criterion “The message says who is writing and under which rules” Compliance measured on 2 campaigns −5 pts out of 15
  10. Secondary The message cannot be rendered outside HTML Criterion “The message can be rendered outside HTML” Experience measured on 2 campaigns −2.5 pts out of 15

14 criteria met, including « The recipient keeps control over tracking » and « DKIM signature validated ». They are listed in their family, below.

Every send, at the time it arrived

One dot per message received by our subscription since October. Tap a dot to open it; the arrows move from one send to the next.

Technical reading of the send of Oct. 15, 2026 →

campaigns in 1 week
2
about 2 a week, in October
sending day
No fixed day
Thursday leads, 1 of the 2 campaigns
arrival window
7 h – 8 h
2 of the 2 campaigns
last send received
15 Oct.
« Décrivez-nous votre journée type »
Pixel
Score
62 65

Campaign 2 of 2

Thursday 15 Oct., 7:03

Décrivez-nous votre journée type

Type
Marketing campaign
Score
65 / 100
Pixel
Present, detected by the form of its address

● Change observed on this send, to be confirmed by the next one.

Sending day

  1. Mon.
  2. Tue.
  3. Wed.
  4. Thu.
  5. Fri.
  6. Sat.
  7. Sun.

Arrival time

1 change observed since October

Each campaign is compared with the previous one, criterion by criterion.

15 Oct.

The detail of this change, criterion by criterion, is reserved for the Pro version.

to be confirmed by the next send · the per-send score goes from 62 to 65

See what changed, before and after Version Pro

Criteria in detail

The 24 criteria + 1 bonus

Met The criterion is verified on every email where it applied. Counts for its full weight in the score. Partly met The criterion is verified on only some of the emails; the detail says which. Counts in proportion to the emails where it is met. Not met The criterion is verified on none of the emails where it applied. Counts as zero, and its weight stays in the denominator. Not observable Nothing in the emails received allows a conclusion: the criterion leaves the denominator and is never counted as a failure. Leaves the denominator: listed, never counted as a failure.

Compliance

These checks cover what the send imposes on the recipient and what it leaves them: measurement of their behaviour, ways to leave, tracking of their objection.

Tracking pixels: the CNIL rule Method, Compliance family better than 65% of the 503 brands measured

The calculation · 45 pts out of 100

2 met · 1 partly met · 3 not met

30 15 20 15 10 10

Weight of each criterion in the score.

No open-tracking pixel Not met Open-tracking pixel detected on the 2 campaigns concerned 0/30 pts

0 points out of 30 — met on 0 of 2 campaigns concerned.

An invisible image tells the sending platform that the message was opened, when, and from which device: this is individual tracking of reading behavior, and the recipient sees none of it. The message does not say whether they consented or objected — that choice lives in the sending platform, not in the email.

Served from cabaia.fr.

The excerpt that establishes it

<img src="https://trk.cabaia.fr/wf/open?upn=***

How to fix it

Klaviyo: open tracking is set per campaign and per flow, in the tracking settings. Watch out for automated flows: the setting there is separate from the campaigns' one.

Specific to klaviyo — not yet re-opened in the tool

Met when no tracking pixel is present. A single pixel is enough for the criterion not to be met on an email.

Unsubscribing is possible and announced Met Unsubscribing is announced, in the header and in the body on 2 campaigns 15 pts

15 points out of 15 — share of observations met across 2 campaigns.

Met when the message announces unsubscribing in its headers, through a page rather than an email to write, and in its body. The detail says which of the two is missing. Not applicable to a transactional email.

What was measured — 2 met out of 2

  • Unsubscribe announced in the header, through a page on 2 campaigns Met
  • Unsubscribe link in the body on 2 campaigns Met
The recipient keeps control over tracking Met The recipient keeps control over tracking on 2 campaigns 20 pts

20 points out of 20 — share of observations met across 2 campaigns.

Two measures: does the unsubscribe link go through a tracker, and does a separate path lead to a preference center or to refusing tracking? Neither establishes that a refusal succeeds — checking would require following the link, which would record a click on the sending platform's side. They describe the control left to the recipient, not the result they would get.

What was measured — 2 met out of 2

  • Untracked unsubscribe link on 2 campaigns Met
  • A separate path leads to a preference center or to refusing tracking on 2 campaigns Met
  • CNIL 14/04/2026 · Postmetry
  • PM-PRIV-003
The message says who is writing and under which rules Partly met No link leads to the privacy policy on the 2 campaigns concerned (2 of 3 measures met) 10/15 pts

10 points out of 15 — share of observations met across 2 campaigns.

How to fix it

The footer of the message names the sender (company name, postal address) and links to its privacy policy with a direct link to the website, not through a tracking domain. These details go once into the base template and then appear in every send.

Nothing to lose: these lines already exist on the website; they only need to be carried over.

A commercial email must make it possible to identify the advertiser (CPCE, article L. 34-5), and the recipient must be able to know who processes their data. This indicator groups what a message can show of it.

What was measured — 2 met out of 3

  • The message names its sender on 2 campaigns Met
  • A reply to the message is possible on 2 campaigns Met
  • No link leads to the privacy policy on the 2 campaigns concerned Not met
  • CPCE L. 34-5 · directive 2000/31 art. 6 · CAN-SPAM
  • PM-PRIV-004
An untracked path leads to the site Not met Every link to the site goes through a tracker on the 2 campaigns concerned 0/10 pts

0 points out of 10 — met on 0 of 2 campaigns concerned.

A recipient who simply wants to visit the site has no option but to go through the click counter.

How to fix it

At least one link in the message points directly to the brand's domain, without going through the platform's redirect domain: the logo, the legal notice or the privacy policy will do. In the editor this is set link by link (“do not track this link”, “disable click tracking”) or through an exclusion list in the account settings.

An untracked link does not count in measured clicks; choosing the logo or the footer takes nothing away from the clicks that matter.

Met when at least one link in the message leads to the brand's site without going through a click counter.

  • Postmetry
  • PM-PRIV-005
No recipient identifier in the message Not met The recipient's address is written into the message on the 2 campaigns concerned 0/10 pts

0 points out of 10 — met on 0 of 2 campaigns concerned.

Base64-encoded or hashed, it is still the address: a hash is recovered by hashing a list of known addresses. Placed in a URL or a header, it travels wherever the message goes — redirect server logs, analytics tools, browser history.

The excerpt that establishes it

href adresse:clair · href adresse:url

How to fix it

Links carry no email address, contact identifier or automatic login token in their parameters. In the email platform, these come from merge variables inserted into URLs (?email={{contact.email}}, ?uid=…): remove them from the template's links, and turn off login-by-link if it is offered.

The platform still identifies the recipient for tracked clicks; what changes is that the address no longer travels in clear to the website, its analytics and its partners.

Met when the recipient's address appears — neither in clear, nor encoded, nor hashed — in no URL and no proprietary header. Addressing headers do not count: they carry it by design.

  • Postmetry · RGPD art. 4 en repère
  • PM-PRIV-020

Deliverability

These checks read the authentication verdict set by our server when the message arrived. This verdict is dated by construction: we never recalculate it, which would query today's DNS rather than the DNS of the day the email was sent.

The calculation · 85 pts out of 85, scaled to 100

6 met

20 20 15 10 15 5

Weight of each criterion in the score.

DKIM signature validated Met Valid DKIM signature on 2 campaigns 20 pts

20 points out of 20 — met on 2 of 2 campaigns concerned.

Met when our receiving server validated the DKIM signature of the email.

DMARC alignment validated Met DMARC alignment verified on 2 campaigns 20 pts

20 points out of 20 — met on 2 of 2 campaigns concerned.

Met when the domain shown in the sender matches the one that authenticated the message.

DMARC policy that helps keep out some impersonation Met Active DMARC policy on 2 campaigns 15 pts

15 points out of 15 — met on 2 of 2 campaigns concerned.

Met when the published policy is “reject” or “quarantine”. A “none” policy asks nothing of mail providers: it is published with no effect on messages that impersonate the domain.

No SPF failure Met No SPF failure on 2 campaigns 10 pts

10 points out of 10 — met on 2 of 2 campaigns concerned.

Met when SPF does not fail. An SPF “none” alongside a valid DKIM and DMARC is a common and legitimate configuration: it is not penalized.

One-click unsubscribe, as defined by RFC 8058 Met One-click unsubscribe as defined by RFC 8058 on 2 campaigns 15 pts

15 points out of 15 — share of observations met across 2 campaigns.

Met when the “List-Unsubscribe” header carries an https address and “List-Unsubscribe-Post” is exactly “List-Unsubscribe=One-Click”. This is what Gmail and Yahoo require of bulk senders: the mailbox's button then acts without opening a page. Not applicable to a transactional email.

What was measured — 2 met out of 2

  • The unsubscribe header carries an https address on 2 campaigns Met
  • One-click unsubscribe announced on 2 campaigns Met
  • RFC 8058 · Gmail et Yahoo
  • PM-DELIV-005
A DKIM signature that covers what matters Met The DKIM signature covers what matters in the message on 2 campaigns 5 pts

5 points out of 5 — share of observations met across 2 campaigns.

What the signature covers, not only that it passes: an algorithm accepted by RFC 8301, the whole body signed, the From, Subject, Date and List-Unsubscribe headers signed, a signature not expired on receipt. Not applicable without a DKIM signature.

What was measured — 3 met out of 3

  • Accepted signing algorithm on 2 campaigns Met
  • Whole body signed on 2 campaigns Met
  • Essential headers signed on 2 campaigns Met
  • Signature valid on receipt Not applicable
  • RFC 6376 · RFC 8301
  • PM-DELIV-006

Technical

These checks cover what email clients actually do with the message: truncation, style blocks removed, resources never loaded. Each threshold states where it comes from: the documented behaviour of an email client, a specification, or our own method.

Support by email client (caniemail) Method, Technical family better than 0% of the 503 brands measured

The calculation · 30 pts out of 85, scaled to 100

3 met · 3 not met

25 20 15 10 10 5

Weight of each criterion in the score.

HTML under Gmail's clipping threshold Not met HTML over Gmail's clipping threshold on the 2 campaigns concerned 0/25 pts

0 points out of 25 — met on 0 of 2 campaigns concerned.

How to fix it

Weight comes down by removing unused CSS, deleting duplicated hidden blocks (mobile and desktop versions of the same content), removing comments and Outlook conditional code that is no longer needed, and embedding no base64 images. Most editors show the HTML weight before sending.

Above 102 KB, Gmail clips the message and shows “View entire message”: the footer, the legal notices and the unsubscribe link drop out of the first read.

Met when the HTML part stays under 102 KB. Beyond that, Gmail cuts off the end of the message — and the end is where the unsubscribe link and the notices are.

  • Gmail
  • PM-TECH-001
A shallow template Not met Layout tables nested beyond the threshold on the 2 campaigns concerned (0 of 1 measures met) 0/20 pts

0 points out of 20 — share of observations met across 2 campaigns.

How to fix it

Flatten the template: one content block per table, placed directly in the main column, with no wrapper table around each section.

In a block-based editor, nesting usually comes from a section placed inside another, or a column inside a column. It is fixed once, in the template, not campaign by campaign.

The technical reading of the email gives the measured nesting and its threshold: it tells you when the fix has taken effect.

Met when layout tables are nested no more than 6 levels deep. Beyond that, the Word engine shared by desktop Outlook and the diverging clients each render the template their own way.

What was measured — 0 met out of 1

  • Layout tables nested beyond the threshold on the 2 campaigns concerned Not met
  • Postmetry
  • PM-TECH-002
Well-formed HTML Met Well-formed HTML on 2 campaigns 15 pts

15 points out of 15 — share of observations met across 2 campaigns.

A doctype, a character set declared in the document, balanced tags and unique identifiers. Each client repairs incomplete markup its own way, which is what makes rendering unpredictable. End tags that HTML makes optional do not count.

What was measured — 4 met out of 4

  • Doctype declared on 2 campaigns Met
  • Character set declared in the HTML on 2 campaigns Met
  • Balanced tags on 2 campaigns Met
  • Unique identifiers on 2 campaigns Met
  • WHATWG
  • PM-TECH-030
Every link leads somewhere Met Every link leads somewhere on 2 campaigns 10 pts

10 points out of 10 — met on 2 of 2 campaigns concerned.

Met when no link is empty, reduced to “#” or written as “javascript:”. Such a link leads nowhere, and most clients neutralise it. Not applicable if the message contains no link.

  • Postmetry
  • PM-TECH-031
No remote stylesheet Not met Remote stylesheet declared on the 2 campaigns concerned 0/10 pts

0 points out of 10 — met on 0 of 2 campaigns concerned.

How to fix it

CSS rules go inside the message, in a <style> block or inline on the elements; no <link rel="stylesheet"> and no @import pointing to a server. Remote fonts are not counted here: most clients ignore them, but they break nothing.

Gmail, Outlook and most clients do not load a remote stylesheet: the message shows without its styles for most readers.

Met when the message calls no external stylesheet, through “link” or “@import”. Several clients never load them. A font stylesheet does not count: without it, the text falls back to another font.

The message follows the shape of an email Met The message follows the shape of an email on 2 campaigns 5 pts

5 points out of 5 — share of observations met across 2 campaigns.

Lines of 998 bytes at most, readable Message-ID and Date, a character set announced on every text part, a transfer encoding consistent with the content (RFC 5322, RFC 2045). Most servers tolerate these deviations, each in its own way.

What was measured — 5 met out of 5

  • Lines of 998 bytes at most on 2 campaigns Met
  • Well-formed Message-ID on 2 campaigns Met
  • Readable date on 2 campaigns Met
  • Character set announced on every text part on 2 campaigns Met
  • Consistent transfer encoding on 2 campaigns Met
  • RFC 5322 · RFC 2045
  • PM-TECH-010

Experience

Four questions about what becomes of the message once received: does it stay understandable, can the recipient still act, can a client render it, can a screen display it. Automatic detection only covers what is declared in the message.

WCAG 2.2 Method, Experience family better than 55% of the 503 brands measured

The calculation · 64 pts out of 100

3 met · 3 partly met · 1 bonus

25 15 15 10 20 15

Weight of each criterion in the score.

The message makes sense without its images, from the inbox on Partly met The message reads poorly without its images or does not announce itself in the inbox — none of the 2 measures is met 6.2/25 pts

6.2 points out of 25 — share of observations met across 2 campaigns.

How to fix it

A preheader of 40 to 130 characters, in real text, follows the subject in the inbox; every meaningful image has an alt attribute that says what it shows; the main message is in text, not inside an image. In the editor, the preheader is a dedicated field, and the alt is filled in image by image.

Half of readers see the message without images when it first opens. An alt and a preheader take a minute per campaign.

Met when the message keeps at least 200 readable characters with images blocked, and a preheader of 40 to 130 characters announces it in the message list. Without a preheader, the inbox shows the first text of the body instead — often “View in browser”.

What was measured — 0 met out of 2

  • Fewer than 200 characters remain readable with images blocked (1 of 2 campaigns concerned) Partly met
  • Preheader missing, too short or too long on the 2 campaigns concerned Not met
  • Postmetry
  • PM-EXP-001
The message can be rendered outside HTML Partly met The text version carries less than 80% of the links (1 of 2 campaigns concerned) (2 of 3 measures met) 12.5/15 pts

12.5 points out of 15 — share of observations met across 2 campaigns.

How to fix it

The text version (text/plain) comes with the HTML and carries the content and the links, not just a sentence saying “open this message in your browser”. Email platforms generate it from the HTML when the option is on (“auto-generate plain text”).

This is the version that watches, screen readers and some business clients read; spam filters also use it, comparing the two versions.

Met when a text version comes with the email and carries the essentials: at least 60% of its text and 80% of its links. A client that does not display HTML falls back on it; reduced to “view the web version”, it renders nothing.

What was measured — 2 met out of 3

  • A plain-text version accompanies the message on 2 campaigns Met
  • The text version carries at least 60% of the text on 2 campaigns Met
  • The text version carries less than 80% of the links (1 of 2 campaigns concerned) Partly met
  • Postmetry
  • PM-EXP-002
All links stay visible with images blocked Met All links stay visible with images blocked on 2 campaigns 15 pts

15 points out of 15 — met on 2 of 2 campaigns concerned.

Met when no link is carried by a single image without alternative text: such a link leaves nothing on screen. Not applicable if the message contains no links.

  • Postmetry
  • PM-EXP-003
Tap targets large enough Met Tap targets of sufficient size on 2 campaigns 10 pts

10 points out of 10 — met on 2 of 2 campaigns concerned.

Met when no sized tap target falls below 24 px a side (WCAG 2.2, criterion 2.5.8). Only targets with a declared dimension are measured; the criterion's exceptions — a target within a line of text, sufficient spacing — are not. Not applicable if the message declares no dimensions.

The message stays readable with assistive technology Partly met The message puts obstacles in the way of assistive technology — 1 of 4 measures met 5/20 pts

5 points out of 20 — share of observations met across 2 campaigns.

How to fix it

Four fixes, all in the template: declare the message language on the <html> tag (lang="en" for an email in English), describe each content image in its alt attribute, mark layout tables with role="presentation", and write links that say where they lead rather than “click here”.

The criterion detail shows which ones are missing from your emails; the others are already met.

A decorative image — divider, spacer — keeps an empty alt="": that is what keeps it silent, not an oversight.

Declared language, described content images, layout tables marked as such, link texts that say where they lead: what a screen reader needs to render the message. The detail says which of these measures is missing.

What was measured — 1 met out of 4

  • Message language not declared on the 2 campaigns concerned Not met
  • Every content image is described on 2 campaigns Met
  • Layout tables announced as data tables on the 2 campaigns concerned Not met
  • Some links do not say where they lead on the 2 campaigns concerned Not met
The message declares its adaptation to screens Met The message declares its adaptation to screens on 2 campaigns 15 pts

15 points out of 15 — share of observations met across 2 campaigns.

Met when the message declares its viewport and its adaptation to screen width. Without them, it displays on a phone at its original width, and is read by zooming and scrolling sideways.

What was measured — 2 met out of 2

  • Viewport declared on 2 campaigns Met
  • Adaptation to screen width declared on 2 campaigns Met
Dark mode declared Bonus point not earned The message does not declare its support for dark mode on the 2 campaigns concerned +0 pts

0 points out of 5 — met on 0 of 2 campaigns concerned.

Earned when the message declares color-scheme or a prefers-color-scheme rule. No standard requires it — clients that force dark mode invert the colors themselves — but declaring it leaves control to the template rather than to the mail client.

  • caniemail
  • PM-EXP-027

Sector comparison

Fashion & retail — 119 brands with at least one campaign analyzed. The shares below are counted on them, never on the catalog.

Reading notes

How to read this page

  1. A criterion that is not observable or not applicable leaves the calculation. It stays listed, never counted as zero: its weight leaves the denominator rather than weighing as a failure.

  2. Each line describes an observable finding, with the excerpt that establishes it. No legal qualification is ever attached to it.

  3. The measurements come from deterministic analyzers: the same message always gives the same result, and a disputed finding can be redone identically from the archive.

  4. Every share is published on an observed basis, and names it: “26 of 30 brands analyzed.” A brand with no email received enters no denominator.

  5. The deliverability score is borrowed: its verdict comes from the server that received the message. All the other families come from our own analyzers.

Does this analysis speak to you?

Let's go through it together, in 20 minutes.

We go over the 10 points with you, the evidence for each and the order in which to fix them. By video call, no commitment.

Pick a time slot Cal.com calendar

Or take it with you: the PDF report

Is this analysis useful to you?

One click, and you help us make it better.