@graph linking Organization, WebSite, ProductGroup, variant-level Product and Offer nodes, MerchantReturnPolicy, and OfferShippingDetails. Available via our $1,200 USD Audit and from $2,900 USD Sprint.AI Search Practice · Schema & Knowledge Graph Engineering
A JSON-LD graph generated from typed Liquid content, so markup cannot drift from the page.
Most Shopify stores emit three conflicting Product schemas, one from the theme, one from a review app, and one from an SEO plugin, none of which connect variants, return policies, or brand identity into a coherent @graph. We replace them with a single server-rendered Liquid entity graph.
Commercial Terms (USD)
- Published Fee
- Audit $1,200 · Sprint from $2,900 USD
- Turnaround
- 2–3 weeks (Fixed Scope)
- Deliverable
- Native Liquid Snippets + Validator Sign-Off
- Audit Fee Credit
- Up to $1,200 USD (30 days)
Payments processed by Stripe. Card details never reach Ecompanda systems. · All prices in USD.
01 · Scope Boundary & Equal-Weight Exclusions
Written in black and white before any work starts.
Every Ecompanda engagement lists what is excluded at equal visual weight to what is included. We ship on an isolated staging theme (`git` branch) and never modify production without your explicit sign-off.
Included in Scope
- ✓Unified `@graph` architecture with stable `@id` URIs across homepage, collections, PDPs, and articles
- ✓Full `ProductGroup` + `hasVariant` modelling for multi-size, multi-color, or multi-pack Shopify products
- ✓Reusable `#return-policy` (`MerchantReturnPolicy`) and `#shipping-policy` (`OfferShippingDetails`) nodes referenced by every `Offer`
- ✓Verified `Organization` entity disambiguation (`legalName`, `iso6523Code`, `sameAs`, `contactPoint`)
- ✓Excision of duplicate theme microdata and conflicting third-party SEO app scripts
Explicitly Excluded (Never in Scope)
- ✕Client-side JavaScript schema injection (which AI crawlers frequently ignore)
- ✕Fake review rating markup not backed by real on-page customer reviews
- ✕Checkout modifications
Sample Deliverable Register
Standard Shopify Theme Schema vs. Ecompanda Liquid @graph
| Entity Node | Default Shopify Theme | Ecompanda Liquid @graph | AI / Rich Result Impact |
|---|---|---|---|
| ProductGroup | Often missing or flat Product node | Full ProductGroup with variesBy + discrete hasVariant nodes | Resolves size/color availability per variant SKU |
| Offer Policies | Omitted from JSON-LD | Linked @id to MerchantReturnPolicy & OfferShippingDetails | Exposes exact return windows & shipping rates to assistants |
| Product Identifiers | SKU only; barcode ignored | Explicit gtin13 / gtin14, mpn, brand, material, weight | Matches Merchant Center & ChatGPT Shopping catalog records |
| Organization | Bare name + logo | Full legalName, address, contactPoint, sameAs authority links | Establishes verifiable merchant entity trust |
02 · Execution Cadence
How the engagement runs from Day 1.
Schema Conflict & Drift Audit
We extract every microdata attribute and JSON-LD block currently emitted by your theme and apps, flagging duplicate @ids and Merchant Center mismatches.
Liquid Entity Graph Construction
We write deterministic Liquid templates that bind JSON-LD fields directly to the same Liquid variables rendered in the visible HTML DOM.
Validator & Search Console Verification
Every template type is verified against the Schema.org Validator and Google Rich Results Test with zero errors before merge.
Related Practice Lines
Adjacent diagnostics and fixed-scope sprints
03 · Frequently Asked Questions
Questions buyers ask before signing.
Every engagement is governed by our published Terms & Conditions, Refund Policy, and Delivery Policy under Ecom Panda LLC.
Why can’t we just use a $19/month Shopify schema app?
Schema apps inject generic JSON-LD on top of your theme’s existing markup, creating duplicate Product entities with conflicting @ids, and they cannot map your custom product/variant metafields (such as compatibility matrices, active ingredients, or construction specs) into the graph.
Does your JSON-LD stay in sync when we change prices or inventory in Shopify?
Yes, automatically. Because the JSON-LD is rendered dynamically by Shopify Liquid at request time from `product.variants`, `variant.price`, and `variant.available`, it can never drift from the visible price or stock status on the page.