# Common Tells of AI Slop That Hallmark Detects: The 57-Gate Taxonomy

> Discover the 57 common AI slop tells identified by Hallmark. Learn to spot imperfections in AI-generated content with this comprehensive taxonomy for better quality.

- Repository: [Hassan El Mghari/hallmark](https://github.com/Nutlope/hallmark)
- Tags: deep-dive
- Published: 2026-07-18

---

**Hallmark identifies 57 specific "AI slop" tells across Critical, Major, and Minor severity levels, ranging from purple-gradient heroes and ubiquitous Inter font usage to italic headers and centered layouts, using an automated gate system defined in [`references/anti-patterns.md`](https://github.com/Nutlope/hallmark/blob/main/references/anti-patterns.md) and [`references/slop-test.md`](https://github.com/Nutlope/hallmark/blob/main/references/slop-test.md).**

The Nutlope/hallmark repository encodes a comprehensive design intelligence system that flags visual and semantic patterns betraying AI-generated, template-driven interfaces. By analyzing the source code in [`skills/hallmark/references/anti-patterns.md`](https://github.com/Nutlope/hallmark/blob/main/skills/hallmark/references/anti-patterns.md) and running the 57-gate slop-test (now 58 gates in the latest commit), Hallmark categorizes these tells into three severity levels—Critical, Major, and Minor—providing specific remediation strategies for each pattern.

## Critical AI Slop Tells

Critical tells are patterns that immediately mark an interface as AI-generated. According to [`references/anti-patterns.md`](https://github.com/Nutlope/hallmark/blob/main/references/anti-patterns.md), these "ship as slop" and must be eliminated entirely.

### Visual Aesthetic Defaults

- **Purple-gradient hero**: The ubiquitous purple-to-blue gradient is the single most-recognised AI aesthetic. The fix uses a single accent hue with no hero gradients.
- **Aurora-blob background**: Flowing purple-to-pink-to-cyan blobs represent the 2022-2023 AI default. Replace these with solid surfaces or subtle two-stop gradients.
- **Floating-orb decoration**: Generic 3D spheres or blurred circles add no semantic value. Remove them and focus on typographic anchors instead.
- **Pure black / pure white surfaces**: Flat, synthetic colours lack brand nuance. Tint surfaces toward the anchor hue instead.

### Layout and Structure Patterns

- **3-column feature grid**: Equal columns with icon-above-heading-below-text constitute the default LLM layout. Break the grid by varying widths and heights or drop the grid entirely.
- **Card-in-card**: Unnecessary nesting has no semantic purpose. Maintain only a single containment layer.
- **Full-viewport centred hero**: Using `min-height:100vh` with centred text and a single CTA represents the default landing-page pattern. Let the hero size to its content and bias the layout left or right.
- **AI-nav**: The hard-left wordmark with inline links and right-aligned CTA is the most-common LLM navigation fingerprint. Select a genre-aware navigation pattern from [`component-cookbook.md`](https://github.com/Nutlope/hallmark/blob/main/component-cookbook.md) instead.
- **AI-footer**: Four-column link blocks with a tiny top border indicate generic SaaS templates. Choose a footer matching the specific genre and content.

### Typography and Color Violations

- **Inter (or Roboto/Open Sans) everywhere**: One-font pages represent a template hallmark. Pair a distinct display face with a refined body face as specified in [`references/typography.md`](https://github.com/Nutlope/hallmark/blob/main/references/typography.md).
- **Gradient headline**: Using `background-clip:text` gradients on headlines screams "AI-generated". Use solid ink and emphasize via weight or colour instead.
- **Side-stripe card**: Thick coloured borders on one edge constitute a 2018-SaaS tell. Use uniform hairline borders or no border.

### Content and Performance Issues

- **Sound-on autoplay**: Unmuted auto-playing media is hostile and an AI shortcut. Always mute media and provide user-controlled toggles.
- **Lazy-loaded LCP**: Deferring the Largest Contentful Paint hurts performance. Use `fetchpriority="high"` or `preload` for above-the-fold media.
- **Default-attractor sameness**: Re-using the same macrostructure across consecutive outputs creates templated pages. Choose a different macrostructure for each brief.
- **Specimen fall-through**: Applying the Specimen macrostructure without an explicit editorial brief looks like a default. Use Specimen only when the brief explicitly requires an editorial or foundry style.

## Major AI Slop Tells

Major tells make interfaces "look AI-generated" but are less immediately obvious than Critical patterns. These are enumerated under the **Major** heading in [`references/anti-patterns.md`](https://github.com/Nutlope/hallmark/blob/main/references/anti-patterns.md).

### Motion and Interaction

- **Bounce / elastic easing**: Over-the-top motion feels outdated. Use exponential `ease-out` instead.
- **Animate-on-scroll everywhere**: Constant fade-ins prevent the page from settling. Choose a single orchestrated entrance.
- **Hover-only affordances**: Touch users lose functionality when interactions rely solely on hover. Provide focus and active states for every hover interaction.

### Layout and Composition

- **Centred everything**: Uniform centre alignment lacks visual hierarchy. Bias layouts left or right and vary column widths.
- **Tag-left / header-right pattern**: Two-column section heads like `01 · THE TOUR` represent the single most reliable editorial-AI tell according to gate 54. Stack label and heading vertically in the same column instead.
- **Icon-tile feature card**: Identical icon-above-heading cards constitute the universal template. Vary sizes, align icons inline, or remove them entirely.

### Typography and Visual Details

- **Italic headers**: Italicised headings are a classic AI-tell. Keep headings roman and use weight or colour for emphasis.
- **Eyebrow on every section**: Repeated uppercase mono-cap labels read as decorative "chapters". Remove eyebrows unless the brief explicitly requests numbering.
- **Shadow-glow on dark**: Light-coloured glows on dark surfaces look artificial. Use elevation via lightness instead of shadow.
- **Tabular data without `tabular-nums`**: Mis-aligned numbers harm readability. Add `font-variant-numeric:tabular-nums` to numerical data.
- **Wrap-to-two-lines clickable text**: Multi-line buttons and links break scanning flow according to gate 49. Enforce `white-space:nowrap` or shorten labels.

### Asset and Content Problems

- **Mismatched icon sets**: Mixing Material Icons, Heroicons, and Lucide creates inconsistent visual language. Select one icon library per project as defined in [`references/assets.md`](https://github.com/Nutlope/hallmark/blob/main/references/assets.md).
- **Generic emoji as feature icon**: Emojis are OS-rendered typography, not part of the design system. Use a single icon library or pure typography.
- **AI illustration look**: Generic blobs and flat-style stock poses betray AI generation. Hand-build illustrations in CSS/SVG or use curated assets.
- **Invented metrics**: Fabricated numbers like "+47% conversion" are obvious lies caught by gate 46. Use `—` placeholders, ask users for real data, or remove the proof slot.
- **Re-drawn UI chrome**: Fake browser bars, phone frames, or IDE windows duplicate existing chrome according to gate 47. Show real screenshots wrapped in `<figure>` and avoid faux chrome.
- **Lottie shortcut**: Pulling in heavy Lottie animations when CSS suffices indicates a performance tell. Implement simple animations with CSS or SVG.

### Technical Implementation

- **Glassmorphism without purpose**: Frosted-glass panels overlaying gradients are decorative fluff. Apply glass only where it conveys genuine depth.
- **Mid-render token improvisation**: Inline colour or font values drifting from the token system are caught by gate 48. Reference all colours and fonts via `var(--token-name)`.

## Minor AI Slop Tells

Minor tells include small taste issues that are not fatal but degrade perceived quality. These encompass straight quotes instead of curly quotes, double-hyphen dashes instead of em-dashes, ellipsis misuse, placeholder names, startup-cliché buzzwords, arbitrary `z-index` values, identical section padding, and `100vw` widths. While individually insignificant, Hallmark's audit verb cleans these automatically during the refinement process.

## How Hallmark Detects AI Slop Patterns

The detection system runs on three mechanisms defined in [`SKILL.md`](https://github.com/Nutlope/hallmark/blob/main/SKILL.md) and [`references/slop-test.md`](https://github.com/Nutlope/hallmark/blob/main/references/slop-test.md).

### Pre-Emit Self-Critique

Before generating final output, Hallmark scores each candidate on six axes: Philosophy, Hierarchy, Execution, Specificity, Restraint, and Variety. Scores below 3 on any axis trigger an automatic revision loop, preventing low-quality iterations from reaching the build stage.

### The 57-Gate Slop-Test

After code generation, Hallmark executes the 57-gate (now 58-gate) slop-test defined in [`references/slop-test.md`](https://github.com/Nutlope/hallmark/blob/main/references/slop-test.md). Each gate asks a yes/no question such as "Is there a gradient headline?" or "Are there invented metrics?" All answers must be **no**; any **yes** fails the test and forces a specific fix before the build can complete.

### The Audit Verb

The command `hallmark audit <target>` flags every tell by name, severity, and suggested fix, drawing directly from [`references/anti-patterns.md`](https://github.com/Nutlope/hallmark/blob/main/references/anti-patterns.md). Developers use this report for manual refinement, while automated pipelines use it for regression testing to ensure slop patterns do not re-enter the codebase.

## Code Examples: Fixing AI Slop Violations

Below are practical corrections for common violations found in the Hallmark source code.

### Eliminating Gradient Headlines

This pattern violates gate 38a and the gradient headline tell in [`anti-patterns.md`](https://github.com/Nutlope/hallmark/blob/main/anti-patterns.md).

```css
/* ❌ Violation: Gradient headline (gate 38a) */
.hero {
  background: linear-gradient(to right, #7e5bef, #ff6b6b);
  color: transparent;
  background-clip: text;
}

```

```css
/* ✅ Fixed: Solid colour with roman heading */
.hero {
  background: var(--color-surface);
  color: var(--color-primary);
}
h1 { font-style: normal; }

```

### Standardising Icon Libraries

Mixed icon libraries trigger gate 30 and the "Mismatched icon sets" tell.

```html
<!-- ❌ Violation: Mixed icon libraries (gate 30) -->
<nav class="nav">
  <svg class="material-icon">…</svg>
  <svg class="heroicon">…</svg>
</nav>

```

```html
<!-- ✅ Fixed: Consistent Lucide icons -->
<nav class="nav">
  <svg class="lucide-icon">…</svg>
  <svg class="lucide-icon">…</svg>
</nav>

```

## Summary

- Hallmark identifies **57 AI slop tells** (expanded to 58 in recent commits) across Critical, Major, and Minor severity levels.
- **Critical tells** like purple-gradient heroes, Inter font overuse, and AI-nav patterns must be eliminated before shipping.
- **Major tells** including italic headers, centred everything, and invented metrics (gate 46) significantly degrade perceived quality.
- **Detection** relies on pre-emit critique, the 57-gate slop-test in [`references/slop-test.md`](https://github.com/Nutlope/hallmark/blob/main/references/slop-test.md), and the `hallmark audit` verb.
- All tells and fixes are documented in [`references/anti-patterns.md`](https://github.com/Nutlope/hallmark/blob/main/references/anti-patterns.md), with specific gates enforcing compliance automatically.

## Frequently Asked Questions

### What is the difference between Critical and Major AI slop tells?

Critical tells are immediate disqualifiers that "ship as slop," such as purple-gradient heroes or the AI-nav pattern, while Major tells create a subtle but persistent templated feel, such as italic headers or centred layouts. Critical violations force immediate rebuilds, whereas Major issues require remediation before final approval.

### How does the 57-gate slop-test work in practice?

The slop-test, defined in [`references/slop-test.md`](https://github.com/Nutlope/hallmark/blob/main/references/slop-test.md), runs 58 yes/no questions against generated code. Each gate checks for a specific pattern—for example, gate 46 detects invented metrics, while gate 30 catches mismatched icon libraries. If any gate returns "yes," the build fails and Hallmark applies the specific fix documented in [`references/anti-patterns.md`](https://github.com/Nutlope/hallmark/blob/main/references/anti-patterns.md).

### Can Hallmark automatically fix all AI slop patterns?

Hallmark automatically fixes Minor tells through its audit verb and can remediate many Critical and Major issues during the pre-emit critique phase. However, some architectural patterns—such as default-attractor sameness or Specimen fall-through—require manual designer intervention to select appropriate alternative macrostructures from [`component-cookbook.md`](https://github.com/Nutlope/hallmark/blob/main/component-cookbook.md).

### Why does Hallmark specifically flag Inter, Roboto, and Open Sans fonts?

These typefaces represent the default font stacks generated by large language models when no specific typographic brief is provided. Using them universally without pairing constitutes a "one-font page" tell that signals template-driven generation. Hallmark's [`references/typography.md`](https://github.com/Nutlope/hallmark/blob/main/references/typography.md) mandates pairing distinct display faces with refined body faces to establish authentic visual hierarchy.