Relationships

Products do not exist in isolation. A tent has a footprint. A harness has compatible belay devices. A sofa has a matching armchair. Relationships make these connections structured, navigable, and mach

OVERVIEW

The Relationships field creates structured, programmatic links between product records in Shopify. Where Compatibility / Context captures named compatibility in human-readable text, Relationships uses Accentuate's Metaobject or product reference field types to create direct, navigable links between a product and its related products — accessories, variants, complementary items, replacement parts, or products in the same collection or family.

Relationships are the data architecture of cross-selling, upselling, and 'complete the set' experiences. They power 'Pairs well with', 'Also in this range', 'Replacement part for', and 'Frequently bought with' features without relying on algorithmic approximation or manual recommendation configuration. A product linked to its accessories via structured relationships will always surface those accessories — regardless of sales history, purchase patterns, or recommendation engine configuration.

BUSINESS VALUE

Why this field matters

  • Structured product relationships drive accessory and add-on attachment rates — the most reliable way to surface relevant cross-sells is to define them explicitly

  • 'Complete the set' and 'Also in this range' features powered by explicit relationships outperform algorithmic 'frequently bought together' for new or low-traffic products

  • Replacement parts and consumables are only discoverable if the relationship between the part and the parent product is structured data — search and algorithm cannot reliably surface this

  • AI recommendation systems use structured relationships as high-confidence signals — an explicitly linked relationship is treated as authoritative compared to inferred associations

  • Product family management is only feasible at scale if family membership is structured data — 'all products in the Alpine Collection' cannot be maintained manually across thousands of SKUs

  • Seasonal and editorial range management ('shop the look', 'kit builder') relies on structured relationships to assemble product sets programmatically

ACF SETUP

How to configure this field in Accentuate Custom Fields

Where

ACF dashboard → Templates tab → Product scope → Add new field

Label

Relationships

Name / Key

relationships

Namespace

accentuate (default)

Field type

Shopify >> Product reference (List) — for direct product links

Multi-value

Yes — a product typically has multiple related products

Field type guidance: Use 'Shopify >> Product reference (List)' to create direct links to other product records. This enables Liquid to access the full product object for each related product — title, image, price, URL, and all metafields — without additional API calls. For more complex relationship structures (e.g. linking products with relationship type labels), use an ACF Metaobject with fields for the related product reference and the relationship type.

STEP-BY-STEP IN ACF

  • Open ACF, go to Templates tab and select the Product scope

  • Click 'Add new field'

  • Label: 'Relationships' — Key auto-fills as 'relationships'

  • Namespace: leave as 'accentuate'

  • Field type: Shopify >> Product reference (List)

  • Enable 'Allow multiple selections' — most products have multiple relationships

  • Click Done, then Save

  • For each product, link to all related product records that a customer would benefit from discovering — accessories, matching items, replacement parts, complementary products

ACF Metaobject approach (advanced): For catalogues where relationship type matters (distinguishing 'accessory' from 'replacement part' from 'matching item'), create a Relationship Metaobject with fields: related_product (Product reference) and relationship_type (Single-line text). Reference this Metaobject from the product template. This approach enables type-specific relationship rendering on the storefront.

REFERENCE VALUES

Relationship types — these describe the nature of the relationship, not the field values themselves

Relationship type

When to use

Accessory

Products designed to be used with or enhance the parent product — tent footprints, helmet accessories, bike computer mounts

Matching item

Products from the same design family — matching sofa and armchair, coordinating bedding sets, same-collection colour variants

Replacement part / Consumable

Parts, filters, batteries, cartridges, or components designed to replace a worn or spent element of the parent product

Upgrade / Next model

The successor or upgraded version of a product — directs customers upgrading to the current generation

Frequently bought together

Products that editorial or data analysis identifies as commonly purchased together — editorially curated, not algorithmically determined

Complementary product

Products that serve different but related functions in the same use context — a sleeping bag and a sleeping mat; a jacket and base layer

Part of set / Bundle

Products that are sold or used together as a defined set — a tent bundle including tent, footprint, and stuff sack

Superseded by

The replacement for a discontinued product — helps customers find the current equivalent

Same product, different variant

Colour, size, or configuration variants sold as separate product records — links variants for discovery and comparison

Required companion

Products that are required for the linked product to function — a product that requires a separately sold hub, base unit, or power source

BEST PRACTICES

  • Make relationships reciprocal wherever possible — if Product A links to Product B as an accessory, Product B should link back to Product A as a parent product

  • Limit relationships to genuinely relevant products — 15 linked products on every product page creates noise, not discovery

  • Maintain relationships when products are discontinued: replace discontinued related products with their successors rather than leaving dead links

  • For complex catalogues, use a Metaobject-based approach with relationship type labels — this allows the storefront to render 'Accessories', 'Spare Parts', and 'Also in this range' as separate, labelled sections

  • Review relationships during seasonal catalogue updates — a relationships audit is part of good catalogue hygiene

COMMON MISTAKES

  • Creating one-directional relationships — if the tent links to the footprint but the footprint does not link back to the tent, half the relationship value is lost

  • Linking too many products — a product page with 20 related products is overwhelming; 3 to 8 curated relationships outperform a comprehensive list

  • Not maintaining relationships when products are discontinued — broken or irrelevant relationships erode trust and create customer service workload

  • Confusing relationships with compatibility: 'This tent is compatible with this footprint' is compatibility text; a direct product record link from the tent to the footprint product is a relationship

  • Using relationships as a substitute for proper variant configuration — if two items are genuinely the same product in different colours, they should be variants, not separately related products

IN CONTEXT

3-Season Backpacking Tent — 2 Person

Relationships

Tent Footprint (Accessory), Tent Repair Kit (Accessory), Tent Inner (Replacement part), Sleeping Bag — -5°C (Complementary product), Sleeping Mat (Complementary product)

Compatibility / Context

Compatible with [Brand] Footprint Model TF2, Requires tent pegs (not included)

Activity

Camping, Hiking, Mountaineering

Weather suitability

Waterproof, Windproof, Three-season

DEVELOPER IMPLEMENTATION

Liquid note: Shopify >> Product reference (List) — use .value to get the array of product objects. Each item in the array is a full Shopify product object, giving you access to all product fields and metafields without additional API calls.

Liquid — Storefront Rendering

{% comment %}

Relationships — Shopify >> Product reference (List)

Namespace: accentuate | Key: relationships

Renders full product objects — access title, image, price, URL

{% endcomment %}

{% assign related = product.metafields.accentuate.relationships.value %}

{% if related != blank %}

<div class="related-products">

<h3>Goes well with</h3>

<div class="related-grid">

{% for related_product in related %}

<a href="{{ related_product.url }}" class="related-card">

<img src="{{ related_product.featured_image | img_url: '300x' }}"

alt="{{ related_product.title }}">

<span>{{ related_product.title }}</span>

<span>{{ related_product.price | money }}</span>

</a>

{% endfor %}

</div>

</div>

{% endif %}

Pro tip: For the Metaobject-based approach, structure your relationship rendering into labelled sections: 'Accessories for this product', 'Replacement parts', 'Also in this range'. This transforms the related products section from a generic recommendation strip into a structured, navigable product ecosystem — significantly increasing attachment rates for accessories and consumables.

SEE ALSO

  • Compatibility / Context — text-based compatibility descriptions; the human-readable counterpart to structured product reference relationships

  • Tags (controlled) — collection membership as an alternative to explicit product-level relationships for editorial grouping

  • Key attributes — for products where the relationship to a parent product or system is a key selling point, surface it as a key attribute

Full ACF documentation: help.accentuate.io | Metafield Definitions → Fields → Field data type → Shopify field types

Last updated