Art Of The Root × Fracture Digital
ART OF THE ROOT×Fracture Digital
Shopify Store Audit

Art Of The Root - Shopify Store Audit

Settings · Products · Collections · Navigation · Pages · Apps

Store: artoftheroot.com  ·  650 products · 107 collections · USD  ·  For: Art Of The Root e-commerce

Executive summary

17
Issues to fix
2
High impact
4
Strengths to keep

Art Of The Root is a mature, well-run store - excellent product content, strong product SEO, real multi-channel selling and wholesale, and proper use of Archive. The debt is in the layers that have grown unchecked: 107 collections with heavy duplication, 17 navigation menus (several legacy and full of dead links), a sprawling tag system, expired discount codes, and a redirect table at its 10,000 cap. Fix the collections and navigation first - they hurt SEO and shopper experience most - then the hygiene items.

Top priorities (high impact)

RefIssueAreaEffort
COL-1107 collections with heavy duplicationCollectionsLarger
NAV-117 menus, including legacy menus full of dead linksNavigationMedium

Store Settings

SET-KEEP

KEEP: a mature, well-run foundation

Strength - keepEffort: Quick

What’s happeningSSL is on the primary domain, US + International markets are live, all six policies exist (including a subscription policy), and the store is genuinely multi-channel - 10 sales channels including Faire and Collective wholesale. Unlike many stores, Archive is used properly (87 archived products).

Why it mattersThis is an advanced, healthy setup. The cleanup is about taming volume (collections, menus, tags, redirects), not fixing a broken base.

AreaState
Products650 total - 505 active, 58 draft, 87 archived (they use Archive properly)
Collections107 - heavily duplicated (biggest cleanup area)
Navigation menus17 menus, several legacy with dead links
Pages25 pages (duplicate policy + wholesale pages)
Sales channels10 live - Online Store, Shop, Google, Meta, TikTok, Pinterest, POS, plus Faire + Collective wholesale
MarketsUS (primary) + International (USD); Canada market exists but disabled
DiscountsDozens of expired codes left in place
URL redirects10,000 - at Shopify's cap
What to change
  • Keep as-is. Optional: decide whether to enable the Canada market (it currently exists but is disabled, so Canadian shoppers check out in USD).

Products

PROD-1

Drafts and archived are in good shape - a light cleanup only

Low / polishEffort: Quick

What’s happening58 products are Draft and 87 are Archived. The drafts are mostly discontinued crystals, jewelry, limited-edition sprays and "Pure & Natural" candles. Cross-referenced against the last 90 days of sales, none of the 58 drafts rank among the store's ~300 best-selling products.

Why it mattersDraft should mean "in progress," not "discontinued." Since these have no recent sales and clear archived equivalents exist, they are safe to clear - this is housekeeping, not a revenue risk.

What to change
  • Archive the discontinued drafts (you already use Archive well) or delete true duplicates/tests.
  • Keep Draft only for products actually being built.
Open in Shopify admin: The 58 drafts Archived (87)
PROD-2

Product SEO is strong - just close the gaps

Medium impactEffort: Medium

What’s happeningMost products carry good custom SEO titles and meta descriptions (a real strength). But a subset of active products are on Shopify defaults - e.g. the Wicked Temptress perfume and the Bad Ass Bitch spray had null SEO.

Why it mattersYou have done the hard part; the gaps are pure upside. Every product without a custom title/description is leaving organic clicks on the table.

What to change
  • Find active products with no custom SEO title/description and fill them using your existing house style.
  • Prioritise best sellers and new arrivals.
Open in Shopify admin: Active products
PROD-3

Vendor is fragmented across three spellings

Medium impactEffort: Quick

What’s happeningThe Vendor field holds "Art Of The Root", "Art of the Root", and "Art of the Root, Ltd." - three versions of the same brand.

Why it mattersVendor drives filtering, reporting and some channel feeds. Three spellings fragment all of it.

What to change
  • Pick one canonical spelling and bulk-edit the other two into it.
Open in Shopify admin: Products (bulk edit vendor)
PROD-4

SKU and UPC gaps

Medium impactEffort: Medium

What’s happeningSKUs mostly follow a clean "ARO###" scheme with UPC barcodes - but there are gaps: some variants have a null or empty SKU (e.g. the Bad Ass Bitch spray), a stray marketplace SKU appears ("ced-743271913"), and barcodes are inconsistently formatted (mixed 12/13/14-digit GTINs with leading zeros).

Why it mattersClean, unique SKUs and consistent GTINs are what make wholesale (Faire/Collective), Google, and Shop feeds work reliably.

What to change
  • Fill null/empty SKUs and replace off-scheme SKUs with the ARO pattern.
  • Normalise barcodes to a single GTIN format; flag any product missing a UPC.
Open in Shopify admin: Products
PROD-6

Channel-approval risk on product names and claims

Medium impactEffort: Medium

What’s happeningMany best sellers use edgy names and claims - profanity ("Bad Ass Bitch", "Back Off B*tch"), sexual language ("sex appeal", "seduction"), and spell/curse/hex framing. That is your brand voice and it clearly sells, but Google, Meta and TikTok product policies frequently disapprove listings with profanity, sexual claims, or "guaranteed outcome" spell language.

Why it mattersDisapprovals silently remove your top products from Shopping, Meta and TikTok feeds - directly capping paid and free reach on exactly the SKUs that convert.

What to change
  • Check each channel (Google, Meta, TikTok) for disapproved products and the reasons.
  • Where needed, set channel-specific titles/descriptions that keep the storefront voice but pass policy (softened wording, no profanity, no guaranteed outcomes).
Open in Shopify admin: Sales channels
PROD-KEEP

KEEP: the catalog itself is excellent

Strength - keepEffort: Quick

What’s happeningTitles are descriptive and keyword-rich, most products have custom SEO, real photography, UPC barcodes and structured SKUs, and there is a deep, well-photographed catalog with subscriptions.

Why it mattersThis is a strong, mature catalog. The work below is about the layers around it - collections, navigation, tags - not the products.

What to change
  • Keep the product standard. Apply the SEO/SKU gap fixes on top.

Collections

COL-1

107 collections with heavy duplication

High impactEffort: Larger

What’s happeningThe collection list has grown out of control. There are three overlapping altar collections (two both titled "Altar Supplies"), five best-seller collections (several containing all 650 products), an exact "Tumbled Crystals" duplicate, two conflicting wholesale collections ("25% Off" whose handle says 35), and legacy alphabetical splits (Candles A-I/J-P/Q-Z, Oils A-I/J-P/Q-Z).

Why it mattersDuplicate and near-duplicate collections split SEO signals, create thin indexable pages, and make the store hard to merchandise and navigate.

DUPLICATE / OVERLAP                       COUNTS
Altar Supplies / Altar Supplies / Altar Tools   111 / 70 / 107
Best Sellers x5 (2 hold all 650 products)       39 / 58 / 650 / 650 / 647
Tumbled Crystals / Tumbled Crystals             3 / 3  (identical)
Wholesale 25% Off / Wholesale 35% Off           35 / 200  (title vs handle mismatch)
Candles A-I / J-P / Q-Z  &  Oils A-I / J-P / Q-Z  legacy alphabetical splits
What to change
  • Pick one canonical collection per concept; 301-redirect and delete the rest.
  • Collapse the five best-seller collections into one; delete the alphabetical A-Z splits.
  • Merge the duplicate altar, tumbled-crystal and wholesale collections.
COL-2

Empty collections

Medium impactEffort: Quick

What’s happeningFive collections have zero products: Aromatherapy Baths, Herbal Blends, Massage Candles, Mojo Bags/Gris Gris, and Specialty Oils.

Why it mattersEmpty collections are dead ends for shoppers and thin pages for Google.

What to change
  • Populate the ones you intend to keep; delete the rest (with a 301 if they were ever linked).
COL-3

Multiple seasonal promo collections live at once

Medium impactEffort: Quick

What’s happeningAt least eight promo collections are live simultaneously - a Summer Sale (500 products), a Holiday Sale (492), Mother's Day, Self Love (514), a Money 20% flash, and two BOGO oil promos. Most have no SEO and several are clearly out of season.

Why it mattersOverlapping, out-of-date sale collections confuse shoppers, can get indexed as stale "sale" pages, and clutter merchandising.

What to change
  • Keep one active promo collection at a time; unpublish/deindex the rest between campaigns.
  • Adopt a single reusable promo collection instead of creating a new one per sale.
COL-4

SEO gaps on the "all / utility" collections

Medium impactEffort: Medium

What’s happeningThe spell-supply and by-intention collections are well optimised (strong titles + descriptions + images). The gaps are the big "All"/utility collections - All Candles, All Oils, Altar, Wealth & Success Intention, Ritual Supplies and others have no custom SEO.

Why it matters"All Oils" and "All Candles" are exactly the broad category terms worth ranking for. Leaving them on defaults wastes strong pages.

What to change
  • Add SEO titles + descriptions to the All/category collections, matching your existing spell-supply quality.
Open in Shopify admin: All Oils All Candles
COL-5

App and internal collections in the mix

Low / polishEffort: Quick

What’s happeningSeveral collections are app/utility: "AVADA - Best Sellers", "Faire Smart Collection (Do Not Edit)", "Best Seller (internal use)", "New Arrivals"/"Newest Products", and "Promo Eligible" - each holding most or all of the catalog.

Why it mattersThey are needed by their apps but should never be in navigation or the sitemap, or they become thin duplicate catalog pages.

What to change
  • Keep the functional ones, but exclude them from search engines and menus. Delete any whose app is gone.
COL-KEEP

KEEP: the by-intention collections are a real asset

Strength - keepEffort: Quick

What’s happeningThe spell-supply / by-intention collections (Money Drawing, Protection, Love & Attraction, Uncrossing, Healing, etc.) are well built - images, smart rules, and strong keyword-led SEO.

Why it mattersThis is exactly the right way to merchandise a spiritual catalog and it is clearly working. The cleanup protects it by removing the duplicates competing with it.

What to change
  • Keep these as the model for the collections that still need SEO and images.

Navigation

NAV-1

17 menus, including legacy menus full of dead links

High impactEffort: Medium

What’s happeningThere are 17 menus. Four of them - "oils", "oils1", "herbs", "herbs1" - are old ingredient dropdowns where every single item links to "/" (dozens of dead links each). On top of that sit "Main Menu(Old)", a "Megamenu", a "Front Page Collection" menu, and three competing header menus ("Main Menu", "KP - Main Menu", "Shop").

Why it mattersMenu sprawl makes it unclear which menu is actually live, and the legacy oils/herbs menus are pure dead weight - dozens of links that go nowhere.

What to change
  • Confirm which menu the live theme uses for header and footer.
  • Delete the legacy "oils/oils1/herbs/herbs1", "Main Menu(Old)" and "Front Page Collection" menus.
  • Consolidate to one header + one footer menu.
NAV-2

Menu names are dated / internal

Low / polishEffort: Quick

What’s happeningNames like "Main Menu(Old)", "KP - Main Menu" (an initials prefix) and "Front Page Collection" are left in the list, and some header links (e.g. "New Arrivals") point to "/".

Why it mattersHard to tell which menu is current; internal/agency names leak into a client-owned store.

What to change
  • Rename the live menus plainly (Header, Footer) and delete the rest; fix any "/" links.
Open in Shopify admin: All menus

Pages & Content

PAGE-1

Duplicate policy and wholesale pages

Medium impactEffort: Quick

What’s happeningManual pages /pages/privacy-policy, /pages/return-policy and /pages/terms-conditions duplicate the native Shopify policies, there is both a "Return Policy" page and an unpublished "Returns & Exchanges" page, and wholesale exists as four pages: two "Wholesale Application" pages, "Order Wholesale From Us Today", and the wholesale info page.

Why it mattersDuplicate policy/wholesale pages split SEO, are extra things to keep in sync, and let shoppers land on an out-of-date version.

What to change
  • Keep one source per policy (native Shopify Policy) and 301 the duplicates.
  • Consolidate wholesale to a single page; redirect the others.
PAGE-2

Stale, app and empty pages

Low / polishEffort: Quick

What’s happeningThe page list includes an "Affiliate Empty Page", two GrowthHero.io redirect pages, and an unpublished "FAQ" page (while the nav points to an app-hosted FAQ).

Why it mattersLeftover app/empty pages are clutter and can occasionally be found or indexed.

What to change
  • Delete the empty/app-redirect pages you no longer use.
  • Decide on one FAQ (page or app) and point the nav at it.

Apps & Hygiene

HYG-1

Dozens of expired discount codes left in place

Medium impactEffort: Quick

What’s happeningThe discount list is full of long-expired codes - app-generated "saWholesale..." codes from 2022 and one-offs going back to CYBER20 (2016).

Why it mattersExpired-code clutter makes the discount area hard to manage and hides the codes that matter.

What to change
  • Bulk-delete expired codes; keep only active and clearly-labelled scheduled ones.
Open in Shopify admin: Discounts
HYG-2

URL redirects are at the 10,000 cap

Medium impactEffort: Medium

What’s happeningThe store has 10,000 URL redirects - Shopify's maximum. Once at the cap, new 301s can fail to save.

Why it mattersThe collection and page cleanup above depends on being able to add fresh 301 redirects. If the table is full, those redirects will not stick and you lose SEO equity.

What to change
  • Audit and prune obsolete redirects (old/broken targets, redirect chains) to free headroom.
  • Then run the URL cleanup so every changed handle gets a working 301.
Open in Shopify admin: URL redirects
HYG-3

App residue

Low / polishEffort: Medium

What’s happeningCollections, pages and a stray SKU show the fingerprints of several apps - AVADA, Faire, Collective, GrowthHero, AfterShip and a marketplace connector ("ced-" SKU).

Why it mattersUninstalling an app does not remove the data it created; left behind it becomes permanent clutter.

What to change
  • Review installed apps; for any removed, delete its leftover collections, pages and metafields.
Open in Shopify admin: Installed apps
HYG-KEEP

KEEP: multi-channel and content are strengths

Strength - keepEffort: Quick

What’s happeningTen sales channels including Faire and Collective wholesale, subscriptions live, and a 158-article blog ("Tips, Tricks, Spells & Rituals").

Why it mattersThe blog is a serious SEO/content asset and the wholesale + multi-channel setup is mature. Protect them while you clean up around them.

What to change
  • Keep. Point the blog's internal links at the surviving canonical collections after the collection cleanup.

Cleanup checklist

Grouped by effort. Colour = impact.

Quick wins (hours)

  • PROD-1 - Drafts and archived are in good shape - a light cleanup only Products
  • PROD-3 - Vendor is fragmented across three spellings Products
  • COL-2 - Empty collections Collections
  • COL-3 - Multiple seasonal promo collections live at once Collections
  • COL-5 - App and internal collections in the mix Collections
  • NAV-2 - Menu names are dated / internal Navigation
  • PAGE-1 - Duplicate policy and wholesale pages Pages & Content
  • PAGE-2 - Stale, app and empty pages Pages & Content
  • HYG-1 - Dozens of expired discount codes left in place Apps & Hygiene

Medium projects (up to ~1 day each)

  • PROD-2 - Product SEO is strong - just close the gaps Products
  • PROD-4 - SKU and UPC gaps Products
  • PROD-6 - Channel-approval risk on product names and claims Products
  • COL-4 - SEO gaps on the "all / utility" collections Collections
  • NAV-1 - 17 menus, including legacy menus full of dead links Navigation
  • HYG-2 - URL redirects are at the 10,000 cap Apps & Hygiene
  • HYG-3 - App residue Apps & Hygiene

Larger projects (multi-day)

  • COL-1 - 107 collections with heavy duplication Collections
ART OF THE ROOT×Fracture Digital
Active Product Cleanup Plan

Art Of The Root - Active Product Cleanup Plan

A field-by-field standard for the 505 active products

Store: artoftheroot.com  ·  505 active products  ·  For: Art Of The Root e-commerce

How to use this plan

Art Of The Root’s products are already in good shape, so this plan is about closing gaps and taming volume, not rebuilding. Work the fields in an order that avoids rework - the fields that cascade first.

Suggested sequence

1 De-duplicate collections & fix vendors/types - these cascade into navigation, SEO and reporting.

2 Tags - the biggest per-record cleanup; do it as a CSV find-and-replace pass.

3 Product & collection SEO gaps + URLs (free redirect headroom first).

4 Publishing & channels as the QA gate - clear disapprovals and publish the 13.

Tooling: small changes (vendor, type, publishing) in Shopify’s bulk editor; titles, SKUs, tags and SEO across 500+ products via CSV export/import (Shopify CSV or Matrixify). Always test a handful, verify on the storefront, then batch.

P1

Product titles

Where it stands todayTitles are a genuine strength - descriptive, keyword-rich and consistent (e.g. "Money Drawing Oil for Rituals"). The only issues are occasional length and channel-safety (profanity/sexual claims that ad platforms reject).

The standard to adopt
  • Keep the descriptive, benefit-led format for the storefront.
  • Front-load the product name + core intention in the first ~60 characters so it reads well in search and feeds.
  • For ad channels, keep a policy-safe title variant (no profanity, no guaranteed outcomes).
How to do it
  1. Leave the storefront titles as they are.
  2. For products disapproved on Google/Meta/TikTok, set a channel-specific title that passes policy.
P2

Variant titles & options

Where it stands todaySingle-variant products display Shopify's placeholder "Default Title"; multi-variant products (e.g. crystal sizes) are labelled well.

Before  Default Title
After   (single variant: no selector shown)   |   Size: 4 oz   |   Scent: Lavender
The standard to adopt
  • No product should show "Default Title" - give single-variant products one clean option or hide the selector in the theme.
  • Keep option names consistent (Size, Scent, Color) across similar products.
How to do it
  1. Set the theme to hide single-variant selectors, or add a real option where it helps.
  2. Standardise option names across product families.
P3

SKUs & UPCs / barcodes

Where it stands todayMost variants use a clean "ARO###" SKU with a UPC barcode. Gaps: some null/empty SKUs, a stray marketplace SKU ("ced-743271913"), and mixed GTIN formats (12/13/14-digit, leading zeros).

Before  sku: (empty)   sku: ced-743271913   barcode: 0798911300981 / 720441442602
After   sku: ARO###      unique per variant       barcode: consistent 12-digit UPC
The standard to adopt
  • Every variant has a unique SKU on the ARO scheme - no null or empty SKUs.
  • Replace off-scheme/marketplace SKUs with the ARO pattern.
  • Normalise all barcodes to one GTIN format; flag any product with no UPC.
How to do it
  1. Export SKUs/barcodes, fix blanks and off-scheme values, re-import.
  2. Confirm UPCs with suppliers for anything missing (needed for Google/Shop/Faire).
P4

Publishing & channels

Where it stands today492 of 505 active products are published to the Online Store (13 are not). The bigger lever is the ad/marketplace channels: product-policy disapprovals on Google, Meta and TikTok silently drop top products from those feeds.

Channel            Standard
Online Store       all sellable products (currently 492/505 - fix the 13)
Google/Meta/TikTok  no un-actioned disapprovals; policy-safe titles where needed
Faire / Collective  wholesale catalog complete with SKUs + UPCs
The standard to adopt
  • Every sellable product published to Online Store, Shop and the channels it qualifies for.
  • Zero un-actioned disapprovals on Google, Meta and TikTok.
  • A valid GTIN + product type on every product so Shopping feeds accept them.
How to do it
  1. Publish the 13 unpublished active products.
  2. Work each channel's disapproval list; fix data or set policy-safe variants.
P5

Product types

Where it stands today16 product types, mostly clean and in Title Case. Minor inconsistency: singular "Candle" and "Oil" alongside plural, descriptive types - and the type list is looser than the (excellent) collection taxonomy.

Before  Candle | Oil
After   Candles | Oils
The standard to adopt
  • A fixed, Title-Case type list with no singular/plural drift (Candles, Oils, ...).
  • Each product mapped to exactly one type; align types with the smart-collection rules.
How to do it
  1. Lock the canonical type list; bulk-edit the outliers.
  2. Re-check smart collections that key on product type.
P6

Vendors

Where it stands todayThree spellings of the brand: "Art Of The Root", "Art of the Root", "Art of the Root, Ltd."

Before  Art Of The Root | Art of the Root | Art of the Root, Ltd.
After   Art of the Root
The standard to adopt
  • One canonical vendor value for the brand.
How to do it
  1. Pick the canonical spelling; bulk-edit the other two into it.
Open in Shopify admin: Products (bulk edit vendor)
P7

Tags

Where it stands todayTags are the biggest data-quality problem in the store. There are thousands of them, uncontrolled: index tags ("A", "A-I"), hyper-specific one-offs ("18 inch bronze necklace", "amethyst. agate. geode"), casing drift ("altar tools" vs "Altar Tool" vs "Altar Tools Athame"), and outright typos ("ahrodisiac", "alatr tools", "amibitions").

Before  A | A-I | altar tools | Altar Tool | Altar Tools Athame | ahrodisiac | amibitions
After   Intention: Protection   Type: Altar Tools   (typos & index tags removed)
The standard to adopt
  • Tags are a small, controlled facet vocabulary for filtering and search - not an SEO dumping ground.
  • One value per concept, consistent casing, no typos.
  • Facets like Intention (Love, Money, Protection...), Product type, Material/Crystal, Deity/Tradition - each with a fixed value list.
  • Remove index tags ("A", "A-I") and single-product descriptive tags.
How to do it
  1. Export all tags; build a find-and-replace map (merge synonyms, fix casing, delete typos and index tags).
  2. Define the facet list your theme filters actually use, and keep tags to it.
  3. Apply via CSV, then wire the storefront filters to the clean facets.
P8

SEO - titles, descriptions & URLs

Where it stands todayProduct SEO is largely done and good. The gaps are (1) a subset of active products with no custom SEO, (2) many "All"/utility collections with no SEO, and (3) collection URL hygiene - duplicate collections competing for the same term, plus title/handle mismatches.

Product   fill the missing custom titles/descriptions (best sellers first)
Collection add SEO to All Oils, All Candles, Altar, Wealth & Success, etc.
URLs      3 altar collections + 5 best-seller collections compete for the same terms
          -> keep one each, 301 the rest
The standard to adopt
  • Custom SEO title + meta description on every active product and every indexable collection.
  • One canonical collection per keyword; 301-redirect the duplicates you remove.
  • Clean, keyword-led collection handles; add a 301 whenever a handle changes.
How to do it
  1. Fill product + collection SEO gaps using your existing house style.
  2. As you de-duplicate collections (COL-1), 301 every removed handle to its canonical.
  3. Free redirect headroom first (HYG-2) so those 301s save.
Open in Shopify admin: All Oils All Candles URL redirects

Definition of done

A product is "clean" when
  • Title is descriptive and channel-safe; no "Default Title" variant showing.
  • Every variant has a unique ARO SKU and a consistent UPC.
  • Type is one canonical value; vendor is the single correct spelling.
  • Tags are from the controlled facet vocabulary only - no typos or index tags.
  • Custom SEO title + description set; clean handle with a 301 for any change.
  • Published to Online Store + the channels it qualifies for, with no un-actioned disapprovals.