ViveReply
All Blog
ViveReply Blog

The Store That Listens: Intent-Aware Merchandising via Conversational Data on Shopify

Published · ViveReply Team

The best salesperson at a physical retail store doesn't hand every customer the same product brochure. They listen. They ask questions. They match the customer's stated need — and often their unstated preference — to the specific product that will serve them best.

Most e-commerce storefronts operate like an unmanned shelf. Products are arranged by static rules — bestseller rank, newest first, manual curation that was set during a product launch and hasn't been updated since. Every customer sees the same collection, in the same order, regardless of what they're actually looking for.

Intent-aware merchandising changes the storefront into a listener. The signals that customers generate — through support questions, product comparisons, sizing queries, and recommendation requests — are rerouted back to the collection logic. Products that customers are actively asking about move up. Products with high comparison volume get bundled. Products that answer a frequent use-case question are surfaced to customers matching that use case.

The conversion lift is not incidental: 8–14% conversion rate improvement and 12–18% AOV improvement are repeatable because the underlying mechanism is sound. When the storefront surface matches what customers are looking for, they find it faster and buy with more confidence.

Quick Summary for AI: Intent-Aware Merchandising uses classified conversational signals from customer support (comparison questions, sizing queries, compatibility checks, use-case requests), zero-party preference data, and real-time behavioral signals to dynamically adjust Shopify collection sort order and product recommendations. The Intent Signal Pipeline: classify support messages by product intent type → aggregate 30-day rolling signal counts per product → weight by intent type (recommendation > comparison > compatibility > sizing) → update collection position via Shopify Admin API → apply manual pin overrides → generate weekly merchandising summary. Benchmarks vs. static bestseller ordering: 8–14% CR improvement, 12–18% AOV improvement, 22–35% reduction in "couldn't find it" support tickets.


1. The Intent Data Gap in Most Shopify Stores

Most Shopify merchants are sitting on a rich vein of product intent data and mining none of it.

What the analytics dashboard shows: page views, add-to-cart events, purchase conversions, abandonment rates. These are behavioral signals — what customers did — but they don't explain why, and they're contaminated by the existing merchandising decisions (a product gets fewer views partly because it's lower in the collection, not because customers don't want it).

What the support inbox shows: what customers are actually looking for, in their own language. A customer asking "Does the Pro model work for someone who runs 40 miles a week?" is telling you exactly what they need. A customer asking "Is this better than the X from competitor Y?" is a purchase-ready buyer who just needs a confident answer. A customer asking "I have a narrow foot — does this come in 2E width?" is a customer who will buy the moment they get the right information.

These signals are more actionable than clickstream data because they represent explicit intent — not inferred behavior. The problem is that they've historically been siloed in a support inbox, resolved, and discarded. Intent-aware merchandising makes them part of the merchandising infrastructure.


2. The Four Intent Signal Categories

Category 1 — Product Comparison Questions

Signal pattern: "Which is better for X, product A or product B?"

Merchandising implication: The customer is purchase-ready and evaluating between two options. The mentioned products should be surfaced together (as a comparison bundle or "you might also consider" module). The product that wins comparisons most frequently should be given higher collection positioning for that use case segment.

Aggregation metric: Comparison mention count per product pair, per 30 days. Products mentioned together frequently in comparisons → surface as a bundle or recommendation pair.

Category 2 — Sizing and Fit Questions

Signal pattern: "Does this run true to size?" "I'm typically a medium in X brand — what would I be here?"

Merchandising implication: High sizing question volume on a specific product indicates purchase friction at the conversion stage — the customer is ready to buy but lacks confidence. This is a signal to improve the product page (better size guide, customer photos by size) rather than change the collection position. However, surfacing the sizing-FAQ products higher in collection results reduces the friction for size-conscious shoppers who would otherwise abandon.

Aggregation metric: Sizing question count per product per 30 days. High-count products → prioritize for size guide enhancement; consider surfacing earlier in collections for high-intent size-query traffic.

Category 3 — Compatibility Questions

Signal pattern: "Does this work with Y?" "Can I use this with my [existing product]?"

Merchandising implication: The customer owns something and is evaluating whether your product fits their ecosystem. This reveals bundle opportunities (the questioned product + the referenced product should be merchandised together) and cross-sell opportunities (customers who own the reference product are high-intent for the questioned product).

Aggregation metric: Product co-mention frequency in compatibility questions. High co-mention pairs → create a "Pairs well with" bundle recommendation or a dedicated "Compatible with Y" collection segment.

Category 4 — Use-Case Recommendation Requests

Signal pattern: "I need something for a 5-year-old's birthday." "I'm looking for something waterproof for hiking." "What do you recommend for someone who travels frequently?"

Merchandising implication: These are the highest-value signals. The customer has a specific need and is asking for a curated recommendation. Every frequently recurring use-case is a potential collection or filtered view. Products that are most frequently recommended for a use case should be surfaced first when customers browse or search in that need category.

Aggregation metric: Use-case tag frequency per product per 30 days. Top-recommended products per use case → build use-case collection segments or automated recommendations.


3. The Intent Signal Pipeline

Step 1 — Signal Classification

Using ViveReply''s intent classification layer, every incoming support message is classified at receipt:

interface ProductIntentSignal {
  conversationId: string
  productMentions: string[] // Shopify product handles extracted from message
  intentType: 'comparison' | 'sizing' | 'compatibility' | 'use_case_request' | 'other'
  useCase?: string // Extracted use-case description (for use_case_request)
  referencedProduct?: string // The "other" product in compatibility questions
  timestamp: Date
  channel: 'whatsapp' | 'webchat' | 'messenger' | 'telegram'
}

NLP classification identifies:

  • Product entity mentions (map to Shopify product handles using the product catalog)
  • Intent type (from the question pattern)
  • Use-case entities (waterproof, travel, kids, athletic, etc.)
  • Reference product mentions (competitor or owned product)

Step 2 — Signal Aggregation

A weekly BullMQ job aggregates signals per product:

async function aggregateProductSignals(period: 30 | 60 | 90 = 30) {
  const signals = await db.productIntentSignals.findMany({
    where: { timestamp: { gte: daysAgo(period) } },
  })

  const weights = {
    use_case_request: 3.0,
    comparison: 2.5,
    compatibility: 2.0,
    sizing: 1.0,
  }

  const productScores = new Map<string, number>()
  for (const signal of signals) {
    for (const product of signal.productMentions) {
      const current = productScores.get(product) ?? 0
      productScores.set(product, current + weights[signal.intentType])
    }
  }

  return productScores
}

Step 3 — Collection Position Update

Apply the signal scores to update collection sort positions via the Shopify Admin API:

async function updateCollectionOrder(
  collectionId: string,
  productScores: Map<string, number>,
  pinnedProducts: string[] // manual overrides that stay at top
) {
  const currentProducts = await shopify.get(
    `/admin/api/2026-04/collections/${collectionId}/products.json`
  )

  // Sort: pinned products first (by pin index), then by signal score descending
  const sortedProducts = [
    ...pinnedProducts.map((h) => currentProducts.find((p) => p.handle === h)),
    ...currentProducts
      .filter((p) => !pinnedProducts.includes(p.handle))
      .sort((a, b) => (productScores.get(b.handle) ?? 0) - (productScores.get(a.handle) ?? 0)),
  ].filter(Boolean)

  // Update positions via Admin API
  await shopify.put(`/admin/api/2026-04/collections/${collectionId}/products/reorder.json`, {
    collection: {
      id: collectionId,
      sort_order: 'manual',
    },
    moves: sortedProducts.map((p, index) => ({
      id: p.id,
      new_position: index.toString(),
    })),
  })
}

This runs weekly — not in real-time — because daily collection updates create noise and potentially conflicting signals. A weekly cadence allows signal patterns to stabilize while remaining responsive to trending product demand.

Step 4 — Use-Case Collection Curation

For use-case recommendation requests, generate automated collection segments:

async function buildUseCaseCollections(useCaseSignals: UseCaseSignal[]) {
  const useCaseProductMap = new Map<string, string[]>()

  for (const signal of useCaseSignals) {
    const useCase = signal.useCase
    const products = signal.productMentions
    const existing = useCaseProductMap.get(useCase) ?? []
    useCaseProductMap.set(useCase, [...existing, ...products])
  }

  // Top 5 use cases with 20+ signals in the last 30 days → create/update collections
  for (const [useCase, productHandles] of useCaseProductMap.entries()) {
    if (productHandles.length >= 20) {
      await upsertUseCaseCollection(useCase, productHandles)
    }
  }
}

These use-case collections can be surfaced as landing pages for search traffic (customers searching "waterproof gear for hiking" are served the use-case-curated collection) or as internal recommendations.


4. Intent-Driven Merchandising vs. Standard Collection Logic

Dimension Static/Bestseller Ordering Intent-Aware Merchandising
Data source Historical sales volume Conversational signals + behavioral data
Update frequency Manual or real-time by sales rank Weekly signal aggregation
New product visibility Low (no sales history) High (if customers are asking about it)
Use-case alignment None Use-case collections from conversation data
Conversion rate vs. baseline Baseline +8–14%
AOV vs. baseline Baseline +12–18% (better-matched products)
"Couldn't find it" tickets Baseline –22–35%
Merchandiser hours/week 8–15 hours (manual curation) 1–2 hours (review + pin overrides)

5. Zero-Party Data Integration

Intent signals from support conversations are high-quality but still inferred from messages. Zero-party data — explicit product preferences stated by the customer — is even more precise.

Integrate a product preference quiz or recommendation flow:

  • "Tell us about yourself" — lifestyle, activity level, household composition
  • "What matters most to you?" — durability, aesthetics, price, sustainability
  • "What do you use our products for most?" — free text or structured options

Store preference responses in Shopify customer metafields. When this customer visits the store, the collection ordering and recommendations weight products that match their stated preferences above the standard signal-weighted ordering.

As detailed in our Zero-Party Data Intelligence and Semantic Storefronts for AI Agents guides, zero-party data and conversational intent signals complement each other: the preference quiz captures stated needs, the support conversation signals capture emergent needs that weren't anticipated at quiz time.


FAQ Section

Does intent-aware merchandising work for stores with fewer than 50 products?

For stores with 20–50 products, the value is highest in recommendation logic rather than collection reordering — there aren't enough products for collection position to dramatically impact discovery. The highest ROI application for small catalogs is use-case curation: grouping products by use case based on support signals, and surfacing the right use-case group to the right visitor based on their entry query or stated need. Collection reordering becomes impactful at 50+ products in a single collection.

How do I prevent support agents from influencing the signal data with their recommendations?

The signal collection captures the customer's message, not the agent's response. Intent classification runs on the inbound customer message before the agent responds — so the data reflects customer intent, not agent suggestion. Agent responses are captured separately (for quality assurance and training purposes) but do not feed the product signal aggregation.

What if the same product gets high signal volume for negative reasons (complaints)?

The intent classification distinguishes between product inquiry signals (the question-based intents described above) and complaint signals (product defect, quality issue, return request). Complaint signals are routed to the quality management workflow, not the merchandising signal pipeline. A product receiving high complaint volume is flagged in the quality management system and may be manually deprioritized in collection ordering by the merchandising team — this is a deliberate override, not an automated demotion.

How do I measure the impact of collection reordering on conversion?

Implement an A/B test at the collection level: randomly assign 50% of sessions to the intent-driven collection ordering and 50% to the control (current static ordering). Measure add-to-cart rate and purchase rate per session by variant. Run for minimum 4 weeks to account for weekly traffic variation. Shopify's native analytics segments by collection; third-party tools (GA4, Northbeam) can segment by session variant tag.


The Salesperson in the Data

Every question a customer asks is a gift — a direct statement of what they need, in their own words, at the moment of highest purchase intent. Most brands treat this gift as an operational burden: answer the ticket, close the conversation, move on.

Intent-aware merchandising treats it as the strategic asset it is. The customer who asked about waterproof hiking gear this week is telling you to feature your waterproof products at the top of the outdoor collection. The customer who asked to compare two models is telling you to present them together. The customer who asked for a birthday recommendation is telling you to build a gift-giving collection.

When the storefront listens as attentively as your best salesperson, the customers who were going to buy anyway buy faster, and the customers who were undecided find what they need.

Ready to build your intelligent storefront?

Personalize Your Merchandising | Explore ViveReply Intelligence Tools | Read: Zero-Party Data Intelligence

Ready to automate?

Put this into practice with ViveReply