> ## Documentation Index
> Fetch the complete documentation index at: https://docs.readyforcommerce.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Ready for Commerce is an ecosystem that currently contains two products, PIM and Repricer, standing on one shared foundation: one identity, one organization, one team, one bill. Do not call it a platform with features, and never hint at an unreleased product.
> PIM connects to Shopify, Amazon, Square, Google Merchant Center and BigCommerce. Repricer connects to Amazon, Walmart, Shopify, BigCommerce, eBay and Square. The two products do not share one list, and each integration is authorized separately inside each product. The roster grows on purpose, so describe what the product does and let a table carry which integrations do it today, instead of counting them or writing that only one does something.
> Integration is the word this product uses, and it is the default in the documentation: the connection, the account, the Integrations screen, the per-account settings and the sync state are all integrations. Channel is reserved for the narrow sense of a destination where a listing lives, as in a product being live on a channel or archived on the channel.
> Newegg is not a supported channel. Do not describe it.
> On Amazon, PIM manages the offer only: price, availability and condition. It does not publish listing content such as titles, descriptions, images or specifications.
> Sign-in is passwordless: a single-use code emailed to the user, or Google. There are no passwords anywhere, so never describe a password, a sign-up with a password, or an email confirmation link.
> There is no public API for customers and no customer-facing webhooks. There is no organization-wide activity feed and no audit export, but the PIM does keep version history on products, brands, categories, tags and specifications, with who changed what and a restore, so never write that changes are not recorded or that an edit cannot be undone. Do not describe capabilities that are not documented here.
> Never write that the products have no AI, and never write that anything is AI-powered. Both are wrong. The PIM's image Optimizer runs AI-backed transforms the seller starts on purpose: Upscale, Remove background, and the region selection behind Refine. The Repricer reads competitor prices off web pages on the server. No control, badge or tooltip in either product names AI, and the seller never writes a prompt, so describe what the buttons do in the app's own words instead of reaching for the word.
> A PIM product, brand, category or variant can be switched off per connected integration account. Hover the channel badge and the switch is beside the account name in the card that opens. It carries no visible caption, so never call it the Sync switch: Sync is only its accessible name. On a variant-grained provider, Amazon today, the switch moves into the variant editor. On a product it asks whether to delete it from the channel, archive it there, or leave it live. Disabling stops publishing, not reading. There is still no per-field sync toggle.
> The PIM's image Optimizer replaced a feature called Squarify, which no longer exists. It resizes to an aspect ratio or to exact dimensions, removes backgrounds, upscales, trims the transparent margin around a cutout and re-centers it, pads, fills and re-encodes, and it always publishes a new asset instead of changing the original. Nothing crops into the picture: the subject is always contained whole.
> The PIM has no repricing engine and never reacts to a competitor's price. It does build the price it publishes to each integration account from the seller's own fields, configured in that account's settings, so do not write that the PIM has no pricing rules.
> Neither product has an in-app notification center, bell or inbox. Notifications are delivered by email only.
> Billing is per organization and per product, and only the organization owner can see or change it. Team members are free and uncounted, so never describe seats or per-user pricing.
> The seller never picks a plan. Each product has twelve price tiers assigned automatically from usage: the PIM from catalog product count, which includes drafts and archived products, and the Repricer from trailing 30-day sales. Nothing is feature-gated by plan and exceeding a tier never blocks work, so never write that a feature requires a higher plan.
> A subscription that is past due or paused makes the product read-only, which stops repricing and blocks edits without deleting data. Only a canceled subscription locks the seller out. Nothing is ever charged without a payment method on file.
> Pages containing the text 'This page has not been written yet', or its Spanish equivalent 'Esta página todavía no está escrita', are placeholders. Do not treat their headings as documented behavior.

# Buy Box ownership report

> The share of your Amazon and Walmart listings winning the Buy Box right now, how that share moved day by day, and which listings are losing it.

On Amazon and on Walmart, several sellers can offer the same item as you, and the channel picks one of those offers to feature. A shopper who adds the item to the cart without picking a seller gets that one. That offer has the [Buy Box](/concepts#what-a-listing-has-on-it), and this report tells you how many of yours have it.

You get three numbers, a chart and a table. The numbers tell you what share of your listings is winning right now. The chart draws that share day by day, so you can see which way you are going. The table gives you one row per listing, with the price you are asking beside the price that is winning.

Most people open it for one of two reasons. Either you want the headline figure, or you want the list of the listings you are losing so you know which ones to work on. Click `Reports` in the sidebar down the left, then click the `Buy Box Ownership` card. Your report opens in a dialog over the screen, headed `Buy Box Ownership Report`.

## Before you start

### What your role lets you do

Every role reads every number in this report, and nothing here is above your level. Nothing here changes a price, a listing or a strategy either, so you can open it and click around freely. Roles are set in [team, roles and permissions](/team#what-each-repricer-role-can-do).

### Only Amazon and Walmart listings are counted

The Buy Box exists where several sellers offer the same item, which is how Amazon and Walmart sell. Nobody else sells on a store or a counter of your own. There is no featured offer to win there, so your own store and your own counter give this report nothing to count.

So every figure on this page is about your Amazon listings and your Walmart listings. If neither is where you sell, you open the report to 0 on all three numbers, a flat chart and an empty table. That is your answer, and not a failure.

## How to read this report

<Steps>
  <Step title="Open the report">
    Click `Reports` in the sidebar down the left. You get six cards. Click the `Buy Box Ownership` card and your report opens in a dialog over the screen.
  </Step>

  <Step title="Read the three numbers at the top">
    `Overview` is the heading at the top of the dialog, with three figures under it. The first one, `Buy Box Ownership`, is the share you are winning. Hover the small info icon beside any of the three and you get a sentence saying what it counts.
  </Step>

  <Step title="Set the date range for the chart">
    In the bar beside your report title is a dropdown reading `Last 30 days`. Open it and pick another period, or pick two dates of your own on the calendar beside that list. `Ownership Trend`, the chart under the numbers, redraws for what you picked.
  </Step>

  <Step title="Bring what you are losing to the top">
    `By Listing` is the table at the bottom of the dialog, and it opens with your winning listings first. Click the `Buy Box Status` column header once and the order flips, so the listings you are not winning come up to the top.
  </Step>

  <Step title="Compare your price with the winning price">
    On any row, read `Current Price` against `Buy Box Price` and `Lowest Competitor`. The gap between them is what you would have to close.
  </Step>
</Steps>

That is the whole report. Close the dialog with the × at the top of it, with the Escape key, or by clicking outside it, and you come back to your six cards.

Everything below explains one piece at a time. The one thing worth reading anyway is why your three numbers ignore your date range, which is further down this page.

## Every option in detail

### The three numbers at the top

`Overview` is the heading at the top of the report dialog, and it has three figures under it. Each one is a label, a number and a small info icon. Hover the icon and you get a sentence saying what that number counts.

| Number | What it counts |
| --- | --- |
| `Buy Box Ownership` | The share of your counted listings winning the Buy Box, to 1 decimal, as `62.5%` |
| `Listings with Buy Box` | The same answer as two counts, the winning listings over the counted ones, as `125/200` |
| `Lowest Price, No Buy Box` | How many of your listings are priced at or under the lowest competing offer and still not winning |

**The first two give you one answer twice.** You compare the percentage week to week. The pair of counts tells you how big the catalog behind that percentage is, and 50% of 8 listings reads exactly like 50% of 8,000.

**`Lowest Price, No Buy Box` is the one to act on.** On those listings a lower price is not your answer. You are already at or under the cheapest competing offer, and the featured offer went somewhere else anyway. Anything above 0 there is worth your time, and [how pricing works](/repricer/how-pricing-works) covers what else decides who gets featured.

All three count your listings as they stand this minute. Changing your date range moves none of them, and the reason is further down this page.

<Accordion title="What a listing does to your percentage before its first market data arrives">
  A listing you have just connected has nothing read about it yet, so it is not winning anything. It is still active, still in stock and still on Amazon or Walmart, so it is counted. It goes into the second number of `Listings with Buy Box` and never into the first.

  So a big first sync drops your percentage for a few minutes, and then you watch it climb back as the offers come in. Wait it out instead of changing your prices over it.
</Accordion>

### The ownership trend chart

`Ownership Trend` is the chart in the middle of the report dialog, between the three numbers and the table. It draws one point a day, so you can see whether your share is climbing or slipping over the period you picked.

Each point is a single reading, taken once at the start of that day, and not an average of the day. A point is the same kind of figure as `Buy Box Ownership` above it, for the day it covers. Hover any point and you get its date and its percentage.

**A day with no reading is drawn at 0%.** So a range that goes back before you connected your first account starts flat along the floor. Then it jumps up to your real line. Nothing is broken, and shortening your range is what makes the chart readable again.

<Accordion title="How far back the chart goes on Today, Yesterday and All time">
  `Today` and `Yesterday` each give you a single point, because a day is one reading. There is nothing to see the shape of, so read your numbers above the chart instead.

  `All time` goes back as far as your readings go, up to 90 days. Older ones are not kept, so `All time` and `Last 90 days` come out the same once you have been selling here for a season.
</Accordion>

### Every column in the By Listing table

`By Listing` is the table at the bottom of the report dialog. One row is one of your counted listings, and every column is showing when you arrive.

| Column | What it shows |
| --- | --- |
| `SKU` | Your own code for the listing |
| `Product Title` | The product name, cut short to fit, and hover it for the whole thing |
| `Region` | Which of your regions the listing sells in, such as `Amazon.com` |
| `Current Price` | What you are asking today |
| `Buy Box Status` | `Winning`, `Not Winning` or `Suppressed` |
| `Buy Box Price` | What the featured offer is going for |
| `Lowest Competitor` | The lowest price another seller is asking |
| `Competitors` | How many other sellers are on the item |

The three statuses are the same three you get in the `Buy Box Status` column of your listings table, and [listing and repricing status](/repricer/listings/statuses#the-buy-box-status-column) sets them out in full. In short, `Winning` is yours, `Not Winning` is somebody else's, and `Suppressed` is nobody's.

**`Buy Box Price` and `Lowest Competitor` are two prices and usually two sellers.** The featured offer is not always the cheapest one, because the channel weighs more than price when it picks. So you can be under `Buy Box Price` on a row and still read `Not Winning` on it.

**A price column is empty when there is nothing to put in it.** `Buy Box Price` is empty on a `Suppressed` row, since nobody has the featured offer to have a price. `Lowest Competitor` is empty when nothing has been read yet about who is selling against you.

**Your table opens with your winners first.** Most visits want the opposite order. Click the `Buy Box Status` column header once and the order flips to `Suppressed`, then `Not Winning`, then `Winning`. Click any other header to sort by that column instead.

Above the rows is the same toolbar every table in the Repricer gives you. It has `Search`, `Columns`, `Filter` and `Density` on it, and [filters](/repricer/filters) covers what each one does. The table opens on 25 rows a page, and `25`, `50` and `100` are your choices in the footer under it.

<Accordion title="Why Competitors can be higher than the offers listed on the listing itself">
  On Amazon, `Competitors` counts every other offer on the item, across every way of shipping it and every condition it is sold in. The `Competitors` tab inside a listing shows you the offers one by one, and it shows the 20 cheapest.

  So a busy item can read `47` here and give you 20 rows there. Both are right, and the number here is the fuller answer to how crowded your item is.
</Accordion>

### Narrowing the report to one account or region

In the bar beside the report title are up to three dropdowns, `Integration`, `Account` and `Region`. They start on `All Integrations`, `All Accounts` and `All Regions`. Each one narrows every figure in the report at once. You may see fewer than three of them, and [reports](/repricer/reports) covers why.

Two things happen when you narrow this particular report, and neither one announces itself.

**Set `Integration` to one with no Buy Box and every figure reads 0.** You get `0.0%`, `0/0`, an empty table and a chart along the floor. The card behind the dialog says `N/A` for the same situation, which is the clearer of the two. Read the card when a report full of zeros surprises you.

**Narrow anything and the chart has only 7 days behind it.** The once-a-day reading covers everything you sell. It cannot answer a question about one of your accounts. So your chart is rebuilt out of the offers read for the listings you picked, and those are kept for 7 days. Every day before that is drawn at 0%.

### Limits

| What | Limit |
| --- | --- |
| How far back the chart goes | 90 days |
| How far back the chart goes once you narrow the report | 7 days |
| Points on the chart | 1 a day |
| Decimals on the percentage | 1 |
| Rows the table shows at once | 25, 50 or 100 |

### What this report cannot do

| You cannot | Do this instead |
| --- | --- |
| Open a listing from a row | Copy the `SKU` and search it from `Listings` in the sidebar |
| See one listing's own history of winning and losing | Open that listing and use its `Insights` tab, which [insights](/repricer/listings/insights) covers |
| See who has the featured offer | Open that listing and use its `Competitors` tab, which [competitors](/repricer/listings/competitors) covers |
| Put two periods side by side | Read one, change the date range, read the other |
| Download, print or email it | Export your listings with the `Market Data` columns, which [exports](/repricer/uploads/exports) covers |
| Get an alert when your share drops | Open the report when you want it |

## What the numbers count

### Which of your listings are counted

Three things decide whether one of your listings is in this report, and all three have to be true of it.

- It sells on **Amazon or Walmart**, because those are the channels where you have a featured offer to win.
- Its `Listing Status` is `Active`, so the channel has your item live.
- It has **stock**. A listing the channel puts at 0 is left out, and one whose stock the channel does not report is counted.

A listing of yours that stops meeting any of the three leaves the report until it comes back, and both halves of `Listings with Buy Box` move with it. So your percentage can change overnight without anybody changing a price, and running out of stock on your winners is the usual reason.

The same three tests decide the `Buy Box Win Rate` card on your dashboard, so that card and this report agree with each other. Your [dashboard](/repricer/dashboard) has the card.

### Why the chart and the numbers can disagree

Your three numbers at the top count your listings this minute. The chart is a run of past readings, and its last point is the one taken at the start of today. So a morning of winning or losing is in your numbers and not yet on your chart.

That is also why your date range moves the chart and leaves the numbers alone. A state has no day attached to it, since a listing either is winning right now or it is not. You can see which of the six reports your date range moves in [reports](/repricer/reports#setting-the-date-range).

### The prices in the table are in the listing's own currency

Every price in the `By Listing` table at the bottom of the report is written in the currency that listing sells in, with the currency code in front of it. A listing on `Amazon.com` reads `USD$29.99` and one on `Amazon.com.mx` reads `MXN$499.00`, on the same table, one row under the other.

Nothing on this table is converted into your organization's currency, and there is no total for it to spoil. You are looking at one item and at the price you might go and change on it. So you get it the way you would type it in. Each region has its own currency, which [accounts and regions](/repricer/integrations/accounts) explains.

## When something goes wrong

### Every number reads 0

| What you have | What you get |
| --- | --- |
| No Amazon or Walmart account connected | `0.0%`, `0/0`, an empty table and a chart along the floor |
| An account connected, and its first sync still running | The same, until your listings arrive |
| `Integration` narrowed to one with no Buy Box | The same, with `N/A` on the card behind the dialog |
| Every counted listing losing right now | `0.0%` with a full table under it |

Only the last of the four is a real 0, and your table tells you which one you are in. An empty table means nothing was counted, and a full one means you are being outbid on all of it.

### The chart is flat at 0 before a certain day

Two things cause this and one answer fixes both. Either your date range goes back before you had listings here, or one of the three dropdowns is narrowed and the chart only has 7 days. Shorten your range, or set `Integration`, `Account` and `Region` in the bar beside the report title back to `All`.

### A listing you just connected reads Suppressed

`Suppressed` means nobody has the featured offer on that item. A listing whose competition has not been read yet reads the same way in this report, because there is no featured offer on record for it either. Give it a few minutes, then look again.

You can tell the two apart in your listings table, where the `Buy Box Status` column is empty until the first offers arrive, and [what Repricer reads](/repricer/integrations/pull) covers when they do.

### A Walmart row says 0 competitors

Walmart reports the winning price and the lowest price without naming the sellers behind them. So there is no count of sellers to give you, and the `Competitors` column of `By Listing` reads `0` on every Walmart row. Your Amazon rows have the real figure, and [competitors](/repricer/listings/competitors) covers what each channel reports.

### The report will not load

Every message you can get here comes with a `Retry` button under it, and [reports](/repricer/reports) lists them with what to do about each. The one you are most likely to meet here is the timeout, because this report asks for every one of your listings at once. Narrow `Integration` to one of yours and try again.

## Where to go next

<Columns cols={2}>
  <Card title="Listing and repricing status" icon="signal" href="/repricer/listings/statuses">
    What `Winning`, `Not Winning` and `Suppressed` mean, and the two statuses beside them.
  </Card>

  <Card title="Competitors" icon="users" href="/repricer/listings/competitors">
    Who else is selling the item, what they are asking, and which of them has the featured offer.
  </Card>

  <Card title="How a price is decided" icon="route" href="/repricer/how-pricing-works">
    The order the repricer decides in, and what it does when the featured offer is not yours.
  </Card>

  <Card title="Reports" icon="chart-bar" href="/repricer/reports">
    The date range, the three dropdowns and the other five reports.
  </Card>
</Columns>
