UXXRAY · facts, not opinions Browse x-rays →
Above-the-fold capture of bombas.com
their above-the-fold, as captured

UXXRAY · Teardown dossier ◉ scanned Jul 17, 2026

bombas.com

ecommerce · desktop

Biggest quick win

88% of measurable text passes WCAG AA. 4+ runs fail. 73% of text was unmeasurable (over images/gradients). not counted either way. Raise text/background contrast to ≥4.5:1 (≥3:1 for large text), especially on CTAs and body copy.

35 /100

Sparse ★☆☆☆☆ 6 measured categories

Score breakdown

  • Offer clarity 10/18
  • Action path 0/13
  • Trust & proof 9/17
  • Friction reduction 4/15
  • Value reinforcement 0/15
  • Risk reversal & urgency 7/10

The funnel, frame by frame

see their whole funnel without clicking through it. scored step by stepmeasured
Homepage / Lander
01

Homepage / Lander

▼ thinnest
1 tactic

$75 +12 more  ·  20% Off  ·  2 proof points

Trust badges
Collections
02

Collections

2 tactics

$75 +24 more  ·  20% Off  ·  2 proof points

Trust badgesLogo wall
Products
03

Products

▲ strongest
4 tactics

$75 +1 more  ·  20% Off  ·  3 proof points

ReviewsTrust badgesFree shippingLogo wall

Offer

how clearly they present the deal and its valuemeasured
10/18partialpoints earned
  • Anchor / strikethrough pricing$56 / $60 / 20% Off$68 / $72 / $60 / $66 / $56 / $110 / 20% Off20% Off
  • Free shippingFree Shipping

Not detected: per-unit price anchor and subscription / auto-ship.

Action

the path to convert. CTA, sign-up, checkoutmeasured
0/13nonepoints earned

No signals detected for this category on the captured funnel.

Not detected: proof above the fold and express wallets.

Trust

proof, social proof, and credibilitymeasured
9/17partialpoints earned
  • On-page review wallreview widget
  • Money-back guaranteeHappiness Guarantee

Not detected: proof at every step.

Friction

objections answered, barriers removedmeasured
4/15lowpoints earned
  • Free shippingFree Shipping

Not detected: FAQ / objection handling and express wallets.

Value

why it’s worth it. comparison and reinforcementmeasured
0/15nonepoints earned

No signals detected for this category on the captured funnel.

Not detected: us-vs-them comparison, stacked free gifts, and per-unit price anchor.

Risk & Urgency

risk reversal and reasons to act nowmeasured
7/10highpoints earned
  • Money-back guaranteeHappiness Guarantee

Not detected: countdown / urgency timer.

UX signals

measured UX quality. contrast · mobile · type · a11y · layoutmeasured
Leaky
3 flags · 8 checks

Measured UX quality. flags, not opinions. Deterministic, evidence-backed, and kept separate from the conversion score.

Readability & contrast

WCAG AA on measurable text. worst offenders quoted, never a fail we can’t compute.
NEEDS WORKText contrast (WCAG AA)

88% of measurable text passes WCAG AA. 4+ runs fail. 73% of text was unmeasurable (over images/gradients). not counted either way.

worst: “OVER 25% OFF SELECT PACKS” at 1:1 (68px, #ffffff on #ffffff). needs 3:1

Raise text/background contrast to ≥4.5:1 (≥3:1 for large text), especially on CTAs and body copy.

Mobile & tap targets

Responsive viewport + touch-target sizes where it matters.
GOODMobile viewport

Responsive viewport meta is present.

Typography

Body size, line-height, line length. is the pitch actually readable?
NEEDS WORKBody text size

Smallest body text is 12px (base ~14px). below the ~16px readable floor.

Keep body copy ≥15-16px; reserve sub-13px for fine print only.

NOTELine length

3 paragraphs run past ~95 characters per line.

Cap measure at ~60-75ch for comfortable reading.

Accessibility hygiene

Language, alt text, form labels, named controls, headings, link clarity.
GOODLanguage declared

html[lang] is set for screen readers.

NOTEImage alt text

1 of 74 content images (1%) have no alt attribute.

Add descriptive alt to content images; alt="" for purely decorative ones.

NEEDS WORKNamed controls

3 buttons/links have no accessible name (icon-only, no aria-label).

Add aria-label to icon-only buttons and links.

NOTELink text

3 links use generic text (“click here” / “learn more”).

Make link text describe its destination out of context.

Next move

Now line it up against a competitor.

Paste any URL. We’ll run the same scan, the same rubric, and put the two funnels side by side. category by category, all measured.

Live scan · 15-25 sec · same rubric · nothing is guessed

Brand kit

palette by on-page usage · type rendered livemeasured
full palette ordered by on-page usage %
primary#e8ba4c
accent#e8ba4c
bg#fdfcf6
surface#f1f1ee
text#0000ee
accent

Body copy in their text role, on a surface card.

the roles, doing their job
The quick brown fox68px
Jumps over the lazy dog64px
A subheading in their voice40px

Body copy set at their measured paragraph size. This is how their product reads to a first-time visitor. same family, same scale, same weight.

  • List item one, at body scale
  • List item two
  • List item three

Teardown report. copy for your LLM

the full evidence-based read: what this funnel does well, where it is thin, and the on-page proof for each. paste into any agent to learn from
bombas.com · 4/13 tactics · 3 proof templates · evidence-backed
# Agent Brief. build in the style of bombas.com

> Machine-extracted from a live on-demand funnel teardown (2026-07-17). 100% facts —
> measured tokens, detected patterns, harvested proof strings. No LLM interpretation.
> Single-page capture (MVP): homepage/landing page only, no funnel walk.
> Tokens: `tokens.json` / `tailwind.css`.

**Category (label):** —
**Funnel:** Homepage / Lander → Collections → Products

## Palette (area-weighted from live CSS)
| Hex | Usage | Likely role |
|-----|------:|-------------|
| `#fdfcf6` | 32.1% | background |
| `#f1f1ee` | 22.7% | background |
| `#1d1d1d` | 9.7% | support |
| `#b2c691` | 8.2% | support |
| `#f3f3f2` | 6.9% | background |
| `#ffffff` | 6.6% | background |
| `#e8ba4c` | 6% | accent/brand |
| `#223859` | 5.6% | support |

Curated roles: `primary=#e8ba4c` · `accent=#e8ba4c` · `bg=#fdfcf6` · `surface=#f1f1ee` · `text=#0000ee`

## Type
- Display: `bombasFont`
- Body: `bombasFont`
- Size scale (px): 12, 14, 16, 20, 23, 24, 32, 35, 36, 40, 64, 68
- Radius (px): 3, 6, 8, 20, 28, 90

## Patterns detected (fact-based). 4/13
- **Anchor / strikethrough pricing**. A struck-through original price or an "X% off" claim. _(home: $56 / $60 / 20% Off; p2: $68 / $72 / $60 / $66 / $56 / $110 / 20% Off; p3: 20% Off)_
- **On-page review wall**. An embedded wall of customer reviews. _(p3: review widget)_
- **Free shipping**. Free shipping / delivery surfaced in the funnel. _(p3: Free Shipping)_
- **Money-back guarantee**. An N-day / money-back guarantee stated. _(home: Happiness Guarantee; p2: Happiness Guarantee; p3: Happiness Guarantee)_

## Proof language (harvested strings → templates)
- `Happiness Guarantee`. e.g. "Happiness Guarantee"
- `{N}% Off`. e.g. "20% Off"
- `Free shipping`. e.g. "Free shipping"

## Funnel facts
- Depth reached: 3 step(s) (single-page MVP capture)
- Proof points: 3 across 3 step(s)
- Discount/anchor pricing: yes · Countdown: no · Subscription: no

## To replicate
Match the palette + type tokens above and deploy the detected patterns. This is a single-page capture. no cart/checkout tactics were evaluated.