Logo

PLP Optimization Agent: Reordering Collections by Predicted Revenue

Lucas Ribeiro
Lucas Ribeiro
June 29, 2026
PLP Optimization Agent: Reordering Collections by Predicted Revenue

Most e-commerce collection pages show the same product order to every visitor. High-converting items get buried below the fold. New arrivals never accumulate the impressions they need to prove themselves. Out-of-stock products keep prime real estate. And no merchandising team can keep up by hand across hundreds of collections, refreshed daily, split by region and device.

We've been running an autonomous agent that fixes this in production at FARM Rio for the last couple of months, tuned to their catalog and merchandising rules. Today we're launching it as a product. Same agent, same approach, scoped to your catalog and brand logic, available for any VTEX store.

Video thumbnail
play_arrow
Watch the video
The PLP Optimizer in production.

The trade-off in collection ordering

Every approach to ordering collection pages picks a side of the same trade-off: exploit what's already working, or explore what might work better. Static "best sellers" sorts pick exploitation. The early winners keep winning, the catalog stops exploring, new launches never get a fair shot, seasonal shifts arrive late. Manual curation can balance both, but it doesn't scale past a handful of collections.

Our PLP Optimization Agent takes the trade-off itself as the problem. It models each product's track record and the uncertainty around it, then ranks every collection in a way that lets well-observed winners keep their position while letting uncertain products earn theirs. Both halves run automatically, on data the store already produces.

close

Static or rule-based ordering

  • Same order shown to every visitor
  • Best sellers keep winning, new arrivals stay buried
  • Out-of-stock or low-grade items keep prime positions
  • Seasonal turnover arrives late
  • Manual curation does not scale past a few collections
check

Adaptive ordering by the agent

  • Ordering recomputed on the cadence you choose, from real user behavior
  • Confident winners ranked on their evidence
  • New arrivals get calibrated exposure to gather data
  • Stock availability and merchandising rules respected
  • Hundreds of collections handled by one model

How the agent works

The agent runs an end-to-end loop. It reads user behavior events from your store's analytics, weighs them by purchase intent (click, add-to-cart, checkout, purchase), trains a ranking model on the most recent data, and writes a new ordering for every collection on a schedule. The ordering is pushed straight into your storefront. The cadence is yours to set: hourly, daily, or anything in between.

Every stage is exposed as a typed MCP tool: fetch_dataset, train_model, predict_ordering. The pipeline is invokable from any agent, workflow, or human operator. On top of the model, the prediction view lets your team stack saved criteria (stock, launches, visual merchandising rules) and push a new ordering live without touching code. Each run is logged, every ordering change is auditable, and any collection can be overridden manually.

schedule

Runs on your cadence

The full loop (fetch, train, predict, push) runs on the cadence chosen per brand: hourly, daily, or anything in between. Operators can also trigger runs on demand or set different cadences per collection.

tune

Tuned per brand

Reward weights, visual merchandising rules (color palette, patterns, brand grouping), stock multipliers, and time-decay for new launches are scoped to your brand.

swap_vert

Real changes, not suggestions

Every run writes the new ordering straight to the storefront catalog. Products routinely move dozens of positions across a single run when stock or conversion signals shift, with each move auditable per product.

history

Full audit log

Every run records its input data window, the resulting product scores, and the ordering diff applied to each collection. Easy to inspect, easy to roll back.

Screenshot of the PLP Optimization Agent inside deco Studio, showing the MCP tools and the current run state
The agent's home screen: every collection under management, with run counts and last execution time.

Your team stays in the loop

The agent is autonomous on the model side. On your side, your team still drives. Every collection has a prediction view: the agent's ranking, with your own taxonomy exposed as toggles. Stock availability, this week's launches, prints, special occasions, beach-ready edits, any saved criterion your team has defined. Layer a criterion on, the ranking recomputes in place. Save a new set, reuse it on the next collection. Hit Apply and the new order goes live in VTEX in one click.

This is the part of the trade-off that pure ML misses. The model finds revenue. Your team brings the taste. The agent gives both a single surface.


In production

The agent has been running on FARM Rio's catalog for the last couple of months, with more than 1,000 ordering changes already pushed live across collections. A controlled A/B test against the platform's default sort confirmed two effects: an increase in add-to-cart rate on the PLP, and an increase in revenue from the same collections.

Screenshot of the A/B test dashboard comparing the agent's ordering against the platform default across collections
Built-in A/B against the platform default, across every funnel metric and time window.

The same model handles seasonal turnover on its own. When a collection swaps over (new drops, sale events, end-of-season), the calibrated cold start gives the new items their fair shot. When traffic patterns shift across regions or devices, region-specific priors absorb it. No retuning required.


The pipeline, in four stages

1

Attribute and aggregate events

A query reduces raw user interaction events to one row per product. Each session is collapsed into binary event flags (impression, click, add-to-cart, checkout, purchase), then marginal counts and pairwise co-occurrences are aggregated across all sessions where the product was displayed.

2

Train the ranking model

The agent updates each product's performance estimate using the recent reward data. New products inherit a calibrated cold-start estimate from the site's own distribution, so they show up high enough to gather signal without dominating the page.

3

Predict ordering per collection

For every product in a requested collection, the system computes a score, sorts descending, and returns the new ordering. Inference takes about 22 milliseconds for a full collection. Region-specific scoring is applied when a region is provided.

4

Push to the storefront

Each run writes the new ordering to VTEX through the catalog API. Visual merchandising rules (color palette, pattern grouping, brand display criteria) are applied as a post-ranking pass before the push. The diff is stored, and any collection can be overridden manually.


What ships in the loop

check
Configurable retraining and reranking cadence across every collection
check
Region-specific models, trained and ranked per region
check
Visual merchandising rules (color palette, patterns, brand grouping) respected at rank time
check
Stock availability as a per-product multiplier so broken grades sink
check
Time-decay weighting so new arrivals surface during launches
check
Reward weights tunable per brand (click, ATC, checkout, purchase)
check
Full audit log of every run, every ordering diff, every input window
check
Operator toolkit on every collection: brand taxonomy as toggleable criteria, saved criteria sets reusable across collections, one-click apply to VTEX, pinned positions respected by the agent
check
A/B test harness against the platform's default ordering

Why this beats the usual alternatives

ApproachStrengthWeakness
Manual curationFull editorial controlDoes not scale, slow to adapt, biased by recency
Best sellers sortSimple to shipWinner-take-all, no exploration, new arrivals stuck
A/B testingRigorousRequires manual experiment design, slow to react
Greedy / collaborative filteringFast convergenceLocal maxima, ignores uncertainty, cold-start unstable
PLP Optimization AgentAutomatic exploration, calibrated cold start, adapts as data accumulatesRequires an ML pipeline (which this agent ships with)

Available for any store

Every catalog is different. We scope each implementation around your brand rules, merchandising criteria, and reward weights. The typical setup is a few weeks of work: analytics wiring check, data access, VTEX connector, baseline training, A/B test against your current sort. From there it runs on its own, with full audit and manual override available at any time.

Want this on your store?

Tell us about your catalog and we'll scope an implementation. The agent runs in production today and we can have a baseline trained against your data in a few weeks.

Stay up to date

Subscribe to our newsletter and get the latest updates, tips, and exclusive content delivered straight to your inbox.

We respect your privacy. Unsubscribe at any time.

You might also like

See all