accessibility

Accessibility score below 90

Symptom: Lighthouse Accessibility under 90, or reviewer cites keyboard / contrast / labels.

What to check: Run the Accessibility scorecard section and re-test with keyboard-only navigation on product, cart, and menu.

performance

Lighthouse Performance below 60

Symptom: Mobile or desktop Performance under 60 on realistic demo content.

What to check: Confirm images use Shopify CDN + lazy loading, defer non-critical JS, and re-run Lighthouse on the demo store — not localhost.

schema

Missing @app blocks

Symptom: Rejection mentions app blocks missing on main product / featured product sections.

What to check: Ensure product and featured product sections include an @app block; verify in the theme editor that apps can be added.

demo

Placeholder or Lorem Ipsum content

Symptom: Demo store still shows filler copy, stock onboarding text, or empty collections.

What to check: Replace every placeholder string; use real products/photos; walk the demo as a shopper.

uniqueness

Theme looks like a reskin

Symptom: Reviewer says the experience is too close to Dawn, Horizon, or another Theme Store listing.

What to check: Compare header, product card, collection, and cart against 3–4 Theme Store themes. Uniqueness must be structural, not only colors.

uniqueness

Built on Dawn or Horizon

Symptom: Submission based on Dawn/Horizon instead of Skeleton Theme or original code.

What to check: Confirm scaffold origin. New submissions must start from Skeleton Theme or fully original code.

assets

SCSS or pre-minified assets shipped

Symptom: Zip contains .scss files or pre-minified CSS/JS Shopify disallows.

What to check: Compile to plain CSS; remove .scss; leave minification to Shopify except allowed exceptions.

settings

Settings use developer jargon

Symptom: Theme editor labels confuse merchants or ignore Shopify terminology.

What to check: Rewrite setting labels in merchant language; group logically; match official font/color setting patterns.

schema

Required templates or features missing

Symptom: Missing templates, gift cards, search, selling plans, or other required features.

What to check: Walk the Required Features and Templates scorecard sections item by item against the zip.

packaging

Zip includes tooling or secrets

Symptom: Package contains .git, node_modules, CI configs, or non-theme folders.

What to check: Run the Packaging gate end-to-end and re-zip from a clean theme-only tree.

demo

Broken empty or edge states

Symptom: Layouts collapse on empty collection, long titles, sold-out, or 0/1/many variants.

What to check: Run the Development Checklist page packs that match the failed templates.

accessibility

Forms lack real labels

Symptom: Inputs rely on placeholder-only labeling.

What to check: Every input needs a visible or programmatically associated label; placeholders are not labels.

Next step

Re-score the failing sections, then re-run packaging before you upload again.

Back to scorecard →
Esc