One uppercase label is fine; three are a tell.

A small uppercase label above a heading is an old editorial device. What gives away an AI-made page is finding it over every section, three times or more, always at the same size with the same letter spacing.

By @ignapradosAI slop3 min read

You know the line. It sits above almost every heading an AI writes: FEATURES, HOW IT WORKS, PRICING, TESTIMONIALS. 12 px type, all caps, letters pulled apart, sometimes grey and sometimes in the accent color. In Tailwind it is text-xs uppercase tracking-widest, and it shows up on its own.

I look for it in every audit, but I never flag it just for being there. I flag it for repeating. The numbers back that up.

What the numbers say

The taste-skill study collected 248 sites from One Page Love and Awwwards Sites of the Day and split them into top-scored and weak ones (the scores come from a panel of models, not human jurors). It measured these labels on the page:

  • Any small, letter-spaced uppercase label: 16% of top sites, 57% of weak ones.
  • Three or more: 6% of top sites, 43% of weak ones.
  • A label above the heading, judged by the panel: 32% against 45%. Barely a difference.

The count is what matters. One label turns up on excellent sites; three or more almost never do. Separately, Jenny Ouyang measured 120 pages built with AI tools and found small uppercase labels with wide letter spacing on 42% of them.

On the patterns page I call it "Uppercase label above every heading". The word doing the work is "every".

Why AI puts it everywhere

It solves a problem the model has no other answer for: telling sections apart. A generated page tends to stack ten blocks with the same shape (heading, paragraph, grid). With no real hierarchy, the label acts as a sign that says "something else starts here".

The trouble is it adds nothing. If the label says PRICING and the heading says "Plans for every stage", the reader gets the same message twice. And once every section has one, it stops marking anything at all: it is noise in nice type.

How to check your own page

Search your code for these and count how often they show up on your home page:

uppercase
tracking-wider
tracking-widest
text-transform: uppercase
letter-spacing: 0.1em

If they sit above three or more headings, work through this list in order:

What to do instead

  1. Delete the ones that repeat the heading. If the label and the heading say the same thing, the label goes. That is usually most of them.
  2. Keep one at most, where the reader actually needs a pointer: a date, a category, the name of a case study. A label that adds a fact earns its place; one that names the section does not.
  3. If you keep it, drop the costume. Normal case, no extra tracking, grey and only slightly smaller than body text. That is how labels work on this site, and they read better for it.
  4. Separate sections with things that really separate them: a change in width, in background, in heading scale, or more space between blocks.
.label {
  font-size: 0.875rem;
  color: #6b6b6b;
  text-transform: none;
  letter-spacing: 0;
}

If an AI is building the page, put it in the brief: "no uppercase labels above headings". The prompts guide has that line, plus the others worth banning from the start. Today, open your home page, count the labels and delete every one that repeats its heading.

Sources

Frequently asked questions

Do uppercase eyebrow labels make a website look AI-generated?

One does not: it shows up on plenty of carefully made sites. Three or more above every heading, same size and spacing, does: in the taste-skill study that happens on 43% of weak sites and 6% of top ones.

What should go above a section heading instead?

Usually nothing, since the heading already says what the section is about. If the reader needs a pointer, use a grey label in normal case with no extra tracking, carrying a fact the heading does not.