CLEARCART  ·  Behavioral Change Analysis & Enhancement Backlog  ·  Prepared 2026-07-23

Internal Review — Not a Public Page

Scoring is not the same as changing behavior

CLEARCART currently does one thing well: it makes hidden product tradeoffs visible through five independent, confidence-rated pillar scores. That is necessary for behavior change but not sufficient. This document audits the extension and research library against established behavior-change science, then converts the gap into a prioritized backlog for the mid-August MVP and beyond.

What the current build actually does

content.js detects a product card, fetches scores, and renders a row of five colored pills. popup.js/popup.html expand that into a per-pillar indicator breakdown with confidence dots and sources. That is the entire user-facing loop today. It is an information display, not a decision-support or behavior-reinforcement system.

Behavior-change research (Fogg's B=MAP model, the UK Behavioural Insights Team's EAST framework, Eyal's Hook Model) converges on the same point: showing someone accurate information changes what they know, not reliably what they do. Purchase behavior changes when the better option is easy to act on, socially reinforced, framed as a loss avoided, and followed by feedback that closes the loop. None of those four exist in the repo today.

No action, only information

The badge content.js:163 opens a side panel on click — it never proposes a specific better-scoring alternative or lets the user act on one. The gap between "I now know this scores low" and "I do something differently" is left entirely to the user.

No relative framing

pillars.js scores each product in isolation (0–100 per pillar). A shopper sees "54" with no anchor for whether that's the best available option in the category or the worst. Loss-framed, comparative framing changes choices more reliably than absolute scores.

No personalization

All five pillars display with equal visual weight for every user. A parent optimizing for Quality/Planet and a bargain shopper optimizing for Value are shown an identical badge. Values-matched framing is one of the cheapest, highest-leverage behavior-change levers and nothing in popup.html or the schema captures user priorities.

No feedback loop or measurement

schema.prisma stores products, scores, and indicators — nothing about what a user saw, clicked, or did after. Without an interaction/event model, there is no way to know whether badges change purchase behavior at all, which is both a product risk and a missed white-paper contribution.

Six behavioral levers to add

Each maps to a specific, named gap above and to established behavior-change mechanics — not generic UX polish.

Lever 01 · Ability

One-click "better option" swap

When a scored product isn't the category leader, surface the higher-scoring alternative directly in the panel with a single action to view/add it. Fogg's model treats ability (how easy the action is) as equally decisive as motivation — right now motivation (the score) exists but the action doesn't.

Touches: content.js badge click handler, popup.js panel, new /api/alternatives endpoint
Lever 02 · Framing

Relative, loss-framed scores

Replace "Planet: 54" with "12 pts below the best Cage-Free option in this aisle." Loss-framed, comparative messages outperform absolute numbers in nearly every nudge literature review (Thaler & Sunstein; EAST's "Attractive" and "Timely" principles) because the reference point is concrete and immediate.

Touches: pillars.js scoring output, requires category-leader lookup at score time
Lever 03 · Personalization

Let users weight what matters to them

A short onboarding ("what matters most: Planet, People, Quality, Value, or Transparency?") reorders and visually emphasizes the badge per user. Personally relevant framing increases both attention and follow- through versus a one-size-fits-all display.

Touches: popup.html new settings view, chrome.storage.sync, badge render order
Lever 04 · Social Proof

"Shoppers who saw this switched"

Once interaction data exists (Lever 06), surface aggregate behavior — "68% of shoppers who viewed this item chose the higher-scoring alternative." Social proof is one of the few nudges with consistently large, replicated effect sizes in the field, but it requires real data — do not fabricate a number here.

Touches: new Interaction model, aggregation job, badge/panel copy
Lever 05 · Identity & Feedback

Cumulative impact recap

A running "this week / this trip" summary (e.g., "4 of 6 picks were high-confidence Planet leaders") reinforces the shopper's self-image as a conscious buyer — the same mechanism that makes fitness-app streaks and expense-tracker summaries sticky. This is the "reward + investment" half of Eyal's Hook Model.

Touches: popup.js summary view, Interaction model, session aggregation
Lever 06 · Measurement

Instrument the funnel now

Add a minimal event log (badge_view, panel_open, alternative_shown, alternative_clicked) to the schema before the MVP ships. This is cheap today and expensive to retrofit later — and it's the dataset that makes Levers 04–05 possible and gives the white paper an actual behavior-change result to report, not just a scoring methodology.

Touches: schema.prisma new Interaction model, content.js/popup.js event calls

Guardrail

The project's stated differentiator is refusing to hide tradeoffs behind a composite score. Every lever above must nudge toward a genuinely higher-scoring option and disclose when data is thin (e.g. "based on 3 shoppers so far") — never fabricate social proof, never hide a low pillar to make a swap look better, and never let personalization suppress a pillar the user chose to weigh low. Dark-pattern nudging would undermine the Transparency pillar the whole product is built on.

Ready for review

Sequenced against the mid-August MVP deadline. P0 items are copy/schema/small-UI changes that fit before launch. P1 follows in the first post-launch iteration once real usage data exists. P2 depends on P1 data or is a larger build.

Priority Backlog item Lever Effort Impact Target
P0 Add Interaction/Event model to schema 06 · Measurement S High Pre-MVP
P0 Loss-framed pillar copy ("12 pts below best option") 02 · Framing S High Pre-MVP
P0 Cost-per-use framing on Value pillar (mirror Diapers page model) 02 · Framing S Medium Pre-MVP
P0 Surface one "why this matters" micro-explainer at Layer 1 (not just researcher Layer 3) 01 · Ability S Medium Pre-MVP
P0 "Better option" swap CTA in panel (static category-leader lookup ok for pilot's 4 eggs) 01 · Ability M High Pre-MVP
P1 Pillar-weight personalization (onboarding + reorder) 03 · Personalization M High v1.1
P1 Trip/session cumulative impact recap 05 · Identity M Medium v1.1
P1 Dynamic category-leader lookup (replace static pilot list) 01 · Ability L High v1.1
P1 Localize integration wired to the swap CTA (local farm as the alternative) 01 · Ability L High v1.1
P1 Real social-proof line once N > threshold ("X% switched") 04 · Social Proof M High v1.1 (data-gated)
P2 Monthly goal-setting ("buy Fair Trade eggs this month") with progress tracking 05 · Identity M Medium v2
P2 Shareable cart-integrity recap card 05 · Identity S Low–Med v2
P2 Streaks/badges for repeated high-integrity picks 05 · Identity M Low–Med v2 (risk: gimmicky if overdone)
P2 Aggregate transparency reports back to retailers/brands ("N shoppers viewed this Labor score") 04 · Social Proof L High (systemic) v2, post white paper

Impact vs. effort

High impact · Low/med effort — do first
  • Interaction/event model
  • Loss-framed pillar copy
  • Swap CTA (static leader)
High impact · Higher effort — plan for v1.1
  • Pillar-weight personalization
  • Dynamic category-leader lookup
  • Localize-backed swap CTA
  • Real social-proof line
  • Retailer transparency reports
Lower impact · Low effort — cheap, do opportunistically
  • Cost-per-use Value framing
  • Layer 1 micro-explainer
  • Shareable recap card
Lower impact · Higher effort — reconsider or defer
  • Streaks/gamification badges
  • Monthly goal tracking

This is also the white paper's second finding

Methodology alone won't distinguish the venture

The methodology (now consolidated into CAPSTONE.md) makes a strong scoring-design argument: independent dimensions over composites, with confidence reported as its own axis. That's a contribution, but it's a static one. Instrumenting the funnel now (Lever 06) turns the white paper into something with an actual behavioral result — e.g. "shoppers shown a comparative, loss-framed score swapped to the higher-scoring option at rate X vs. baseline Y" — which is a materially stronger empirical claim for a petition built on documented, active, novel work than methodology description alone.

Practically: ship the P0 event log even in skeletal form before the pilot goes live. Every day it's missing is pilot data that can never be reconstructed retroactively.