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

# Sales

> Read what sold among the items your filters watch — final price, the cut the seller took, the seller, time held online — and use it to decide what to buy back, at what price and from whom.

The **Sales** screen tells you what **left** among the listings your filters detected: at what price, after what cut, from which seller, and how fast. It is your map of the market — the answer to "what actually resells, and who do I buy it back from".

<Note>
  **This screen does not watch anything on its own.** It reads what **sales tracking** checks, filter by filter. Until a filter has been put under tracking **here**, its items are never re-checked: their sale will not exist for REGA, even if the filter detects them perfectly in the Filters tab. Detecting and tracking are two separate moves.
</Note>

<Frame caption="The Sales screen, “Luxe FR” view, “Sold” tab — eleven sales, 1,420 €, twelve sellers.">
  <img src="https://mintcdn.com/regasolutions/qwd9LpL60q4fWPff/images/ventes-en.webp?fit=max&auto=format&n=qwd9LpL60q4fWPff&q=85&s=7bd545f60773af846662e2de66b1983b" alt="REGA's Sales screen: group and filter selectors, Items / Dashboard toggle, context strip, and the grid of sold-item cards." width="1760" height="1100" data-path="images/ventes-en.webp" />
</Frame>

***

## What you are looking at

<Frame caption="The screen's twelve controls, numbered.">
  <img src="https://mintcdn.com/regasolutions/qwd9LpL60q4fWPff/images/ventes-annote-en.webp?fit=max&auto=format&n=qwd9LpL60q4fWPff&q=85&s=301b32e80fea9e51ed245d5bec3d3674" alt="The same page with numbered markers 1 to 12 placed on its controls." width="1760" height="1100" data-path="images/ventes-annote-en.webp" />
</Frame>

| №  | Control                                                  | What it does                                                                                                                                                 |
| -- | -------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| 1  | The account chip, “Vinted · compte\_demo · ready to buy” | The account that **will pay for the next purchase**. Tooltip: “compte\_demo will pay for the next purchase — ready to buy.”                                  |
| 2  | The bell                                                 | Your notifications. Here: “3 unread notifications”.                                                                                                          |
| 3  | Administration                                           | REGA staff only — this button does not appear on your account.                                                                                               |
| 4  | The “AUTOBUY” pill                                       | Arms or disarms automatic buying. Here: “Automatic buying disarmed”. It is visible everywhere, including here.                                               |
| 5  | The “rega — home” logo                                   | Back to the main dashboard.                                                                                                                                  |
| 6  | “All groups”                                             | Restricts the **list of filters offered** to the chosen group. Does not appear if none of your groups has a member.                                          |
| 7  | “Items”                                                  | The list view. Tooltip: “The list of tracked items — sold, withdrawn or still on sale”.                                                                      |
| 8  | “Dashboard”                                              | The aggregates: verdicts, rhythm, brands, prices. Tooltip: “The tracking aggregates”.                                                                        |
| 9  | “Refresh”                                                | Asks the server to re-check this filter's items **now**. Tooltip: “Re-check this filter's items now.”                                                        |
| 10 | “Archive the gone items”                                 | Files to the archive what has already left the market. Tooltip: “Move this view's already-gone items to the archive. Items still on sale are never touched.” |
| 11 | “Tracked filters”                                        | Opens the drawer: put a filter under tracking, remove it, set the alert, suspend or resume the intake of new listings.                                       |
| 12 | “Luxe FR”                                                | **What you are looking at**: one named filter, a whole group, or all tracked filters.                                                                        |

<Warning>
  **Two buttons behave differently depending on what you are looking at.** On the merged views — “All tracked filters” and “The whole group” — **“Refresh” disappears** (one click there would launch as many passes as you have filters, against real sellers), and the drawer no longer offers “Stop tracking this filter”, “Notify me”, or the intake setting. **To act, pick a named filter; to read, stay on the merge.**
</Warning>

<Info>
  The **AUTOBUY** pill (4) does not belong to this screen but deserves one sentence, because it is visible here: automatic buying runs **on our servers**. Once armed, it survives closing the tab, closing the browser, shutting the machine down. **The only move that stops it is disarming it.**
</Info>

***

## The routine that works

Three different uses, three ways to open the screen. Take the one that matches your moment.

<Tabs>
  <Tab title="The daily glance">
    1. Open on **“All tracked filters”** — that is the default position, do not leave it to read.
    2. Read the news counter on the right of the tool row: “Nothing new since your last visit”, or the number of departures and sales since your last pass.
    3. Go through the fresh cards, **♥** anything you would want to buy back.
    4. **Click “Mark as seen”.** Without that click, the next visit cannot tell new from old.
  </Tab>

  <Tab title="The weekly review">
    1. Switch to **“Dashboard”**.
    2. Read “WHAT WE KNOW ABOUT DEPARTURES” **before** the number of sales: the undecided rate is what tells you whether your figures are trustworthy.
    3. Open “details” in the context strip and compare `observation: {obs}` and `tracking stops after {arret}`.
    4. Scroll to “BY BRAND”: the **Sell-through** column and the **Median sale** column, read together, tell you what to buy in volume and what to buy as a rare piece.
    5. Go back to “Items” and click **“Archive the gone items”** to start again on a readable list.
  </Tab>

  <Tab title="Before buying a piece back">
    1. Click the card to open the **details panel**.
    2. Check the **struck-through price** and the **cut**: that is the price the market actually bit at, not the price it started from.
    3. Page through the photos to the best one, **then** click “Find the same piece” — Google Lens works on the photo **you are looking at**.
    4. Look at the seller and their stars. The same seller showing up three times in your list is a supplier, not a coincidence.
    5. If you want their next piece: **“Message the seller”** — after checking which account will write.
  </Tab>
</Tabs>

***

## The life of an item

This is the diagram that clears up most misunderstandings: “Sold”, “Removed by the seller”, “Removed” and “tracking stopped” are **four different outcomes**, and only one is a sale.

```mermaid theme={null}
flowchart TD
    N["The radar sees the listing appear"] --> Q{"Is its filter under<br/>sales tracking?"}
    Q -- no --> X["Nothing is recorded"]
    Q -- yes --> S["Under watch<br/>12 checks, from 45 s to 24 h<br/>6 of them in the first half hour"]
    S --> P{"Does the listing<br/>still answer?"}
    P -- yes --> S
    P -- "it has vanished" --> M{"Is Vinted's sale marker<br/>still readable?"}
    M -- yes --> VD["<b>Sold</b><br/>“Sold” tab · teal counter"]
    M -- "closed, no marker" --> RE["<b>Removed by the seller</b><br/>dashboard only"]
    M -- "unreadable, we came back too late" --> AM["<b>Removed</b> — undecidable departure<br/>dashboard only"]
    S -- "24 h reached, or no room left" --> AB["<b>Tracking stopped</b><br/>we will never know"]
    VD --> AR["“Archive the gone items” → “Archived” tab<br/>held with no time limit"]
    RE --> AR
    AM --> AR
    AB --> AR
```

<Info>
  **The sale marker stays readable for at least \~50 min after the departure.** That is the whole margin tracking has to decide. A pass that comes back inside that window decides; a late pass leaves an **undecidable** departure. Anything that speeds re-checks up — fewer filters, tighter filters — turns “Removed” into “Sold”.
</Info>

***

## Putting a filter under tracking

<Steps>
  <Step title="Open the “Tracked filters” drawer">
    The button sits at the right end of the action row (marker 11). On a fresh install, the screen shows “No filter tracked.” and **the drawer opens by itself, once**.
  </Step>

  <Step title="Pick a filter">
    Under the **FILTER** heading, the “Choose a filter…” list shows your filters with their group, and the word “paused” where it applies. If everything is already tracked: “All your filters are already tracked — create a new one in the Filters tab.”
  </Step>

  <Step title="Read the intake verdict BEFORE clicking">
    Between the choice and the button you get “New listings from this filter” — or “New listings from this filter — close to the ceiling”, or “— ceiling passed”. It gives you a **bracketed rate** (`Between ~{bas} and ~{haut}.`, or `Under ~{d} — too rare to measure over this window.`) and the room available (`Room left: {n} new items an hour.`). While measuring: “Observing (\~15 s)…”.
  </Step>

  <Step title="Click “Track sales”">
    Under **FILTER TO TRACK**, the chosen name is repeated, then the button starts tracking. With no filter chosen: “Choose a filter to track first.” On success: `Sales tracked — {nom}`.
  </Step>

  <Step title="Set the alert">
    The **TRACKING** block appears, with the “Notify me” switch and the “Stop tracking this filter” button. That block exists **only** on a single filter's view — never on a merge.
  </Step>
</Steps>

<Tip>
  **A whole group can be signed up in one move.** If you picked a group and it is missing members, the button `Track this group · {n} filters` (or `Complete · {n} untracked`) appears in the action row. It is the only place in the product where tracking is set up in bulk.
</Tip>

### What can refuse the signup

<AccordionGroup>
  <Accordion title="The server judges the filter too wide">
    This is the **only server refusal** in the whole subsystem. It never says "no" without saying what to change: it gives the number of listings received per minute, the number of checks per second that would require, what tracking sustains **for all filters together**, then the two levers. The measured lever, spelled out: from a €30 price floor upwards, only **14% of listings remain** — far more effective than a narrower category. And it reassures you: the filters already tracked are not affected.
  </Accordion>

  <Accordion title="The short measurement does not decide">
    Over a 15 s window, a filter running at 2 listings/min has a **61% chance of showing nothing at all**. That is the normal regime of rare brands — which is the heart of the product. The screen then offers its own remedy: the **“Refine over a long window”** button, which restarts the observation. While it runs: “Long observation running…”.
  </Accordion>

  <Accordion title="The verdict is negative — and forbids nothing">
    Under a negative verdict the screen writes: “You can track this filter anyway: this measurement informs, it does not forbid.” And the default reason tells you what you are buying: “This filter brings in a lot of new items: they will all enter tracking, but re-checks will spread out. Raising its price floor is the setting that weighs the most.” A filter refused today can pass tomorrow: capacity is re-read on every attempt.
  </Accordion>

  <Accordion title="Tracking a group fails">
    On failure: `Could not track the group — {raison}`, the typical reason being “group unknown or empty”. If it was all in place already: “Every filter in this group was already tracked.”
  </Accordion>
</AccordionGroup>

***

## Choosing what you look at

Two triggers, side by side (markers 6 and 12): the **group** restricts the list offered, the second picks **the view**.

| Position                        | What it reads                                           | When it is offered                      |
| ------------------------------- | ------------------------------------------------------- | --------------------------------------- |
| `All tracked filters · {n}`     | All your tracked filters, merged and deduplicated       | From **2 tracked filters**              |
| `The whole group · {n} filters` | The tracked filters of the chosen group, merged         | From **2 tracked members** in the group |
| A filter's name                 | That filter alone — **the only view where you can act** | Always                                  |

When a position is not offered, **the reason takes its place**: `None of the {n} filters in this group is under sales tracking.` or `Merging is available from 2 tracked filters — {n} out of {total} are.` A `1/{n}` marker (tooltip `1 filter out of {n} tracked in this group`) tells you a group is showing on the left while a single filter is being read.

<Tip>
  Choosing “All tracked filters” **clears the group restriction** — otherwise two controls would contradict each other. Symmetrically, changing group drops you back onto a **filter**. This is not a bug: it is what guarantees that a single control decides what you see.
</Tip>

***

## Reading a card

Every card is dense on purpose. Here is what each element tells you — and what it does not.

| On the card                      | What it says                                                                                  | The trap                                                                            |
| -------------------------------- | --------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
| The status badge                 | “Sold”, “Removed by the seller”, “Removed”, “tracking stopped”                                | Only “Sold” is a sale. See “What surprises people”.                                 |
| The “Under review” badge         | “The listing is temporarily hidden by Vinted. This is NOT a withdrawal: we keep checking it.” | It is **added to** the status, it does not replace it                               |
| The “new” outline                | “Left the market since your last visit”                                                       | It only lasts **300 seconds** — see tip 5                                           |
| The ♥ “Keep this item”           | Puts the item in a separate list, with its own copy of the details                            | **This is not a Vinted favourite**: nothing goes out to Vinted                      |
| The ‹ › arrows and counter       | The listing's other photos                                                                    | Measured: **823 items out of 2,952 (28%)** carried a photo, and never more than one |
| Price, struck-through price, cut | The **final** price and what the seller conceded                                              | The cut is what tells you where the market bites                                    |
| The origin chip                  | The filter that saw the item **first**                                                        | Only appears on merged views                                                        |
| “gone 1 h”                       | When the departure was **recorded**                                                           | Recorded at the **following** check, never at the moment it left                    |
| “under 1 d 0 h”                  | Time held online                                                                              | It is always an **UPPER BOUND**                                                     |

<Note>
  **The whole card opens the details panel.** Only the title, the seller, the photo arrows and the ♥ do something else — they are there so you can act without opening.
</Note>

***

## The two views

<Tabs>
  <Tab title="Items">
    The card grid, plus a **sticky tool row** carrying:

    * **Three view pills** with their counters: “Sold”, “Kept”, “Archived”.
    * **Sorting**, in a single menu (“Sort by”): *Recently sold* (default) · *Recently detected* · *Oldest* · *Price ↓* · *Price ↑* · *Seller*. The trigger shows the short form, “Sort : Sale”.
    * **Brand** and **Category**, **multi-select**. Category shows as a **tree** — measured: **5 levels, 2,920 nodes** — with the subtree count when the server publishes it. A “Category not resolved” box catches items with no category, and appears only if at least one real category exists.
    * **The news counter** and its “Mark as seen” button.

    <Warning>
      Both menus only offer what is **already loaded** — the screen says so: “Values seen so far — the list grows as you load more items.” If a brand is missing, load more **before** concluding it never sold.
    </Warning>
  </Tab>

  <Tab title="Dashboard">
    A line of figures, then four blocks.

    **The line**: confirmed sales · undecidable · withdrawn by the seller (plus, where they exist, under review and tracking stopped) · sell-through rate · median sale · already on sale · mean · median ignorance · median price · value sold **per currency** · distinct sellers out of tracked.

    **Block 1 — “WHAT WE KNOW ABOUT DEPARTURES”**, deliberately placed before everything else: a three-segment gauge and the cause sentence, `{p} of the {n} departures` “could not be decided: the listing had vanished when tracking came back. The sale marker stays readable for at least \~50 min after the departure: this is the re-check backlog, not a Vinted limit.”

    **Block 2 — “SALES RHYTHM”**: 24 h, 7 d, average, **withdrawals / 24 h**, and 24 hourly bars.

    **Block 3 — “BY BRAND”**: a scrolling table (“◂ the table scrolls sideways ▸”) with the columns *Brand · Tracked · Sales · Withdrawn · Sell-through · Median sale · Value*.

    **Block 4 — “SALE PRICES”**: a histogram, with the currency inventory if the axis mixes any.
  </Tab>
</Tabs>

### The three pills do not read the same thing

<CardGroup cols={3}>
  <Card title="Sold" icon="badge-check">
    “Only sales carrying Vinted's sale marker — no caveat”. The counter does not move when you tick a brand.
  </Card>

  <Card title="Kept" icon="heart">
    What you set aside with the ♥. A separate list, with its own copy of the details, **bounded to the current view**.
  </Card>

  <Card title="Archived" icon="archive">
    What you filed. **Sales only**, held without limit, loaded only when you open the tab.
  </Card>
</CardGroup>

```mermaid theme={null}
flowchart LR
    P1["“Sold” pill"] --> R1["What tracking holds in memory<br/>re-read in a loop every 10 s"]
    P2["“Kept” pill"] --> R2["A separate list<br/>bounded to the current view"]
    P3["“Archived” pill"] --> R3["The archive — sales only<br/>loaded on opening, never watched"]
    R1 -. "“Archive the gone items”" .-> R3
    R3 -. "“Delete the archived items”<br/>two confirmations" .-> Z["Permanently erased"]
    R2 -. "never touched" .-> Z
```

***

## Cleaning up

<Steps>
  <Step title="Keep what you want to hold onto, first">
    The ♥ on a card. It is **the only safety net** against step 3, and it has to be set **beforehand**.
  </Step>

  <Step title="Archive">
    “Archive the gone items” opens the “File the gone items?” dialog. It announces how many items **that left the market (sales AND withdrawals)** will leave the list, reminds you that “Items still on sale are not touched: they have no verdict yet.” and that “Nothing is deleted. They stay readable in the “Archived” tab, held with no time limit.” Nothing to file ⇒ “Nothing to file: no gone item in this view.” Failure ⇒ “Archiving is not possible right now.”
  </Step>

  <Step title="Delete the archive — two confirmations, on purpose">
    “Delete the archived items” exists **only** on the “Archived” tab. The dialog announces `{n} items held in the archive will be permanently erased.`, warns “This action cannot be undone.” and lists what is **NOT** touched: items still tracked, and the items you have **kept**.
  </Step>
</Steps>

<Warning>
  **“Stop tracking this filter” no longer destroys your sales, but it does sacrifice the living ones.** The confirmation says so: “will no longer be checked and its items still on sale will leave tracking: their sale will not be recorded”, and “Departures already recorded are KEPT: they come back if you put this filter under tracking again.” The move used to throw away the whole history — measured: **10,005 sales held, 5 after the click**, and re-tracking the filter returned none of them.
</Warning>

***

## The context strip, and how to read it

Under the tool row, an always-visible strip: `{n} sold` in teal, the value sold, `{n} sellers`, `checked {quand}` — on the capture: “11 sold”, “1,420 €”, “12 sellers”, the time of the last check, and the state “paused”.

Then **every admission, never folded away**. The five that call for action from you:

| The admission                          | What it means                                                               | What you do                                                                                   |
| -------------------------------------- | --------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- |
| `detection disabled`                   | The filter is paused in the Filters tab: it takes in nothing any more       | A “0 sales” then says **nothing** about the market. Re-enable the filter from the Filters tab |
| `watch stopped`                        | **No** item is being checked at all, on any filter                          | Counters keep their last value and look normal. Contact REGA                                  |
| `partial tracking`                     | More items to check than the service checks; the oldest are seen less often | Remove or tighten filters. Recent items keep their pace                                       |
| `{n} listings not taken into tracking` | New listings found no room                                                  | Same remedy: tighten. See tip 3                                                               |
| `{n}/{max} new items per h`            | This filter takes a notable share of the shared queue                       | A price floor is the most effective lever                                                     |

The others are read in passing: `{n} on sale left tracking` · `{n} writes lost` · `history set aside at start-up` · `{n} listings unaccounted for` · `{fait}/{total} filters checked` · `throughput too low` · `older items seen {n}× less often` · `heavy consumer` · `paused` · `last check errored`.

Behind **“details”**, the full diagnostic: items tracked and gone, passes, re-checks, pending, `one full pass ~{d}`, `{n} new/h`, load, dropped, memory, archive, checks per source, `checked every {d}`, and above all the line to watch: `observation: {obs} · tracking stops after {arret}`.

<Note>
  When the intake of new listings is blocked, an **“Intake suspended”** box sits at the top, with its reason, what it covers — “No new item enters tracking while the suspension lasts: listings spotted now will not be re-checked, so their sale will not be recorded. Items already tracked keep being checked as usual.” — the number of listings already refused, and the **“Resume intake”** button. From a group view: “Resuming is possible from a single filter's view.”
</Note>

***

## Zero sales showing: what to check, in order

```mermaid theme={null}
flowchart TD
    A["“0 sales” on screen"] --> B{"Does the strip say<br/>“detection disabled”?"}
    B -- yes --> B1["The filter is paused<br/>→ Filters tab, re-enable it"]
    B -- no --> C{"An “Intake suspended”<br/>box?"}
    C -- yes --> C1["Nothing new is coming in<br/>→ “Resume intake”"]
    C -- no --> D{"Are you on ONE filter<br/>while tracking several?"}
    D -- yes --> D1["→ switch to<br/>“All tracked filters”"]
    D -- no --> E{"Is a brand or a category<br/>ticked?"}
    E -- yes --> E1["→ “Show all” button"]
    E -- no --> F{"Is “checked” a long<br/>time ago?"}
    F -- yes --> F1["Tracking is behind<br/>→ “Refresh”, then tighten your filters"]
    F -- no --> G["The market is quiet.<br/>The dashboard confirms it"]
```

***

## An item's details panel

A click on a card opens the details: large photo and thumbnail rail, brand, title, chips for **status / Under review / size / condition / category**, the clause `Tracking stopped — {motif}: its fate will stay unknown.` where it applies, price and cut, seller (with stars **if the source gave them** — otherwise no stars at all, never "0 stars"), the time sentences and `seen {d}`.

Three actions:

<CardGroup cols={3}>
  <Card title="View the listing on Vinted" icon="external-link">
    Always there. Opens the original page in a new tab.
  </Card>

  <Card title="Find the same piece" icon="search">
    Google Lens **on the photo you are looking at**. Page to the best photo first.
  </Card>

  <Card title="Message the seller" icon="mail">
    Only appears if the server declares the capability. See the warning below.
  </Card>
</CardGroup>

### Messaging a seller

<Warning>
  **This is the only move on this screen that consumes a resource shared with buying.** Sending messages is the only rate-limited point at Vinted, and it is **the same budget as your purchases**, account by account. Always check which **account will write** before sending: the selector only appears from two connected accounts, and without it the server falls back to the first available account — which has no reason to be the one you are looking at.
</Warning>

The composer warns you before sending: “The sold item can no longer be reached on Vinted. Your message will go out under another listing of this seller — they will see it in “…”.” It offers the sending account (from 2 accounts) and the carrying listing (from 2 listings), and the field is capped at **1,000 characters**.

<Tip>
  Because your message arrives **under a different listing**, the seller has no way of guessing which piece you mean. Name it in the first line. Measured over 60 sellers: **58 out of 60** had at least one live listing to carry the message (median 25), **2 out of 60** had none.
</Tip>

Possible refusals, word for word:

* “Write your message first.”
* “This seller has no listing online any more: Vinted offers no way to message them.”
* “This seller's other listings cannot be read at the moment.” (with “Retry”)
* “Message not sent — try again in a few moments.”

***

## The screen's states

| Situation                      | What the screen writes                                                                                                                                                                                  |
| ------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Fresh install                  | “No filter tracked.” — and the drawer opens by itself, once                                                                                                                                             |
| Group with no tracked filter   | “No tracked filter in this group.”                                                                                                                                                                      |
| Nothing selected               | “Choose a tracked filter.”                                                                                                                                                                              |
| List loading                   | “Loading the sales…”                                                                                                                                                                                    |
| No sale yet                    | “No sale yet on this filter.” + `{n} are still on sale and tracked.` + `{n} items are held in the archive — “Archived” tab.`                                                                            |
| Brand/category too tight       | “No item matches these brand and category filters.”                                                                                                                                                     |
| “Kept” empty                   | “No item kept. The “Keep” button on a card sets an item aside: it stays there, with its details, even after archiving.”                                                                                 |
| “Archived” empty               | “No archived sale. The “Archive the gone items” button files here what has left the market. This tab shows SALES only — withdrawals and departures without a verdict are kept too, but not shown here.” |
| Dashboard with nothing to show | “Nothing to aggregate yet — tracking is running.”                                                                                                                                                       |
| The server is not answering    | The server's message + a “Retry” button                                                                                                                                                                 |
| Intake blocked                 | The “Intake suspended” box + “Resume intake”                                                                                                                                                            |

At the foot of the list: `{n} shown` (with ` out of {n} received` and ` · {n} in total` where they apply), `{n} more are held in the archive — “Archived” tab.`, `{n} kept items come from filters outside this view.` with the **“See all tracked filters”** button, the “Load more” button, and at the ceiling: “Display ceiling — narrow by brand, category or status.”

***

## Our tips

### 1. Read on “All tracked filters”, enter a filter to act

That is the default position, and for good reason: the screen used to open on the **first filter by signup order** — with 44 filters, that meant showing **1/44 of the sales, chosen by nobody**. The page looked empty while everything was there. Keep the habit: **the merge to read, the named filter to refresh, remove, adjust.**

### 2. The first figure on the dashboard is not the number of sales

It is the **undecided rate**, and its block sits before every aggregate on purpose. Measured on a real population: **47.5% of departures undecidable (4,841 out of 10,186)**, cause identified as a tracking pass **2.94× too slow** (12,780 s against 4,340 intended, over 22,002 items). The signature is clean: a proven sale had received **10 median checks** before it left, an undecidable one **6**. If that rate climbs, it is not the market changing — **it is us coming back too late**. The remedy is in 3 and 4.

### 3. A €30 price floor, and nothing else, is your best lever

It is the measurement the server itself quotes in its refusal: from **€30 upwards, only 14% of listings remain**. A narrower category also works, far less well. Why it matters: a single luxury-brand filter was measured at **1,539 intakes/h** against a fallback capacity of **1,500/h** — one filter alone can saturate the queue everyone shares, and it is your **other** filters that lose freshness. Sales tracking is not a collection: it is an attention budget.

### 4. “Under \~N/min” does not mean “dead filter”

Over 15 s of observation, a filter running at 2 listings/min has a **61% chance of showing nothing**. That is exactly the regime of rare brands, which is what you hunt. Click **“Refine over a long window”** — and remember a refusal never forbids: “this measurement informs, it does not forbid”.

### 5. Make it a habit: read, then “Mark as seen”

The teal outline that flags a fresh item lasts only **300 seconds**, while re-check pacing is measured in hours: on a screen you open twice a day, **it never shows anything**. The news counter, on the other hand, **never** resets on its own — not on mount, not on load, not when you change filter. It is your only marker that survives from one visit to the next. Without the click, it will never tell you anything new.

### 6. Keep before you clean up, and keep generously

The ♥ “Keep this item” puts the item in **a separate list, with its own copy of the details**. Emptying the archive does not reach it; archiving does not either. Measured bonus: a sold item's photo was still being served **11.7 h after** it left — so a kept item stays consultable, illustration included, long after it disappeared from Vinted. Keep generously, it is free: **nothing goes out to Vinted, no quota is consumed, the seller never knows.**

### 7. Filter instead of “Load more”

The list is not a download but a **stream**: it is re-read in a loop every 10 s, and the pace stretches in proportion to its size — up to 60 s for a large list. **A short list is a fresh list.** Measured: **a single brand filter takes a list from 100 cards down to 16**. At the 500 ceiling, the screen even tells you what to do: “Display ceiling — narrow by brand, category or status.”

### 8. Compare “observation” and “tracking stops after” under “details”

This is the single most useful diagnostic on the screen. On the left, the age of the **oldest** item still tracked; on the right, the **setting**. The tool used to announce **24 h of observation while no item on sale went past 1.85 h of actual tracking** — when **55.5% of the sales in the control cohort arrive AFTER that threshold**. When the first figure is far shorter than the second, the sale times you are reading are **truncated by us, not by the market**: remove filters from tracking, or tighten them.

### 9. Read “BY BRAND” in two columns, never in one

**Sell-through** alone makes you buy volume that is worth nothing; **Median sale** alone makes you buy rare pieces that sit. Cross them: high sell-through **and** a short median = a supplier to restock from; low sell-through **and** a long median = a piece to take only at a broken price. And remember the median is an **upper bound**: the real sale time is always shorter than what is shown.

### 10. Load before you filter, not the other way round

The Brand and Category menus only offer values **already loaded** — “Values seen so far — the list grows as you load more items.” If you are looking for a rare brand, click “Load more” once or twice before opening the menu, otherwise you will wrongly conclude it never sold.

### 11. Do not confuse “Recently detected” with “Recently sold”

The default sort is *Recently sold*, on the **departure** date. *Recently detected* sorts on the **detection** date, never the sale date — useful to see what just came under watch, never to read a market. The screen says so in the sort tooltip; it is the most common misreading of the table.

### 12. Archive as soon as the list gets unreadable — it is one tab away from reversible

The working views read memory **only**, so archiving genuinely empties “Sold”. That was not always true: measured right after a real archiving run, **3,720 items archived, and “Sold” was still serving 2,196 sales**. Today the move does what it says, everything is found again under “Archived”, **held without limit**, and the foot of the list reminds you how many went there.

### 13. Only stop tracking a filter after the hot phase

An item's first six checks all fall inside the **first 30 minutes**: that is where most verdicts are decided. Removing a filter from tracking during that window sacrifices its items still on sale — their sale will never be recorded. Let the hot phase run out, then remove.

### 14. Check the sending account before you write, every time

Messaging shares its rate budget with your purchases, account by account. A message sent at the wrong moment from the wrong account can cost you the window for your next purchase. The account selector only appears from two accounts: below that, look at which one is shown in the page header before pressing send.

***

## What surprises people

<AccordionGroup>
  <Accordion title="“Removed” does not mean “removed by the seller”">
    Two distinct labels exist. “Removed by the seller” is a **recorded** withdrawal. “**Removed**” on its own is an **undecidable** departure: the listing had vanished before we could read its marker. The label was chosen on a measurement — **982 items filed there, 982 had genuinely vanished, zero readable closures**. Keep the rule in mind: a sold item **keeps its page**; a page that cannot be found mostly means we came back too late.
  </Accordion>

  <Accordion title="“Under review” is neither a departure nor a withdrawal">
    The listing is temporarily hidden by Vinted. The badge is **neutral** and is **added to** the status; the item stays tracked, for up to **72 h** instead of 24. Measured: out of **1,592 items** that an earlier version wrongly froze as "withdrawn" (31.8% of the store, 1,362 of them at their very first check, at \~50 s), two re-probes returned **0/42 and 0/11** withdrawal signatures — **31 were still buyable** and **9 came fully back on sale**.
  </Accordion>

  <Accordion title="“Tracking stopped” is neither a sale nor a withdrawal">
    It means "we will never know". An item let go for lack of room, or because it passed 24 h on sale without doing anything. Measured: **4,628 live items dropped in 3.09 h**, once upon a time without leaving the slightest trace. Those items are **excluded from the denominator** of the sell-through rate — which is what makes that rate honest.
  </Accordion>

  <Accordion title="The pill counters do not move when you tick a brand">
    That is deliberate, and the screen writes it: “The counter covers the whole filter, before brand and category.” A counter that followed the selection would never tell you the size of your market again.
  </Accordion>

  <Accordion title="The “Archived” tab never reloads on its own, and its counter is smaller">
    The archive only grows at the end: watching it would re-serve an identical page. It only loads **when you open the tab**, never in advance. Its pill counts archived **sales** only, while the archive also receives withdrawals, departures without a verdict and stopped tracking: the pill number is therefore normally **lower** than the archive total, and the foot of the list gives you the real total.
  </Accordion>

  <Accordion title="“Refresh” does not refresh the screen">
    It asks the server for a **pass**, capped at **200 items**, and the screen does not reload straight after: results arrive as the next checks come through. Progress tracking stops after **3 minutes** and says so: “Check still running — progress tracking stops here.” A refusal shows as `Refresh refused — {raison}`, the most frequent reason being that a pass is already running.
  </Accordion>

  <Accordion title="The “Kept” list is bounded to the current view">
    So you can "lose" a kept item simply by changing filter. The screen does not leave you in the dark: it writes `{n} kept items come from filters outside this view.` and puts up the **“See all tracked filters”** button. And if you release a ♥ in this view, the card **stays** on screen with the heart switched off: the next load does the tidying.
  </Accordion>

  <Accordion title="Every sale duration shown is an UPPER BOUND">
    A departure is recorded at the **following** check, never at the moment it left. Hence “under …” everywhere, and “median ignorance” next to it, which puts a number on the imprecision. Watch out for “already on sale ≤ …” too: that is **not** a sale time — the item was found while it was already listed, so its duration is overstated by an unknown amount. The two populations are **never** merged.
  </Accordion>

  <Accordion title="One price histogram can mix currencies">
    Nothing is converted, and the screen announces it with the counts. Measured over a sample of 395 detections: **EUR 212 · GBP 95 · PLN 41 · USD 16 — 46% outside the euro area**. Two currencies never add up: value sold is served **per currency**.
  </Accordion>

  <Accordion title="The dashboard's median price is not an average of departures">
    It is computed on **sales** only. An earlier version computed it over all departures, withdrawals included: measured, 2 sales at €100 and €110 plus 4 withdrawals at €5-8 gave **€7.50**, i.e. **14× under the truth**, while the same screen displayed 105.0 three blocks below.
  </Accordion>

  <Accordion title="Some cards have no photo, or no category">
    Measured: **823 items out of 2,952 (28%) carried a photo**, and never more than one — Vinted does not serve them all at birth. Likewise, **21% of gone items have no resolved category**: the “Category not resolved” box in the Category menu exists precisely to catch them.
  </Accordion>
</AccordionGroup>

***

## On a phone

<Frame caption="The Sales screen on a phone: stacked selectors, actions over several rows, and two whole cards visible on arrival.">
  <img src="https://mintcdn.com/regasolutions/qwd9LpL60q4fWPff/images/ventes-tel-en.webp?fit=max&auto=format&n=qwd9LpL60q4fWPff&q=85&s=3d50d460ceba102a31501a395f9f6658" alt="The Sales screen at 390 px wide: selectors and action buttons wrap over several rows, the grid shows two columns of cards." width="780" height="1688" data-path="images/ventes-tel-en.webp" />
</Frame>

What changes:

* **Bottom tabs replace the sidebar**: “Feed”, “Filters”, “Orders”, “Tracked”, “More”. Sales is not among them directly — you reach it through **“More”**.
* **The selectors stack** and the action buttons wrap over several rows; the order stays the same as on a large screen.
* **The grid drops to two columns**, and the promise held is that **two whole cards** are visible on arrival, without scrolling.
* **The context strip folds onto two lines**, but it keeps every admission: nothing is hidden to save space.
* **The “BY BRAND” table scrolls sideways**, and says so: “◂ the table scrolls sideways ▸”.

***

## The limits, said plainly

<Warning>
  **An item that sells after its tracking window will never be counted.** Tracking stops re-checking an item still on sale after **24 h** (72 h if it went under review). If it sells in the 25th hour, that sale will not exist in your figures — the item will be marked “tracking stopped”. Same for an item let go for lack of room. That duration is not adjustable, and there is only one value.
</Warning>

* **Vinted does not always distinguish a sale from a withdrawal.** “Removed” departures without a verdict are a platform limit, not a product one. What we can do on our side is come back faster — hence tips 2 to 4.
* **The “Withdrawn”, “No verdict” and “All” views no longer exist as tabs.** The server still counts them; you now read them in the **dashboard** and the context strip. Measured reason: counting doubtful departures as sales, the screen announced **1,716 sales against 734 proven — 57% withdrawals**.
* **You cannot remove a whole group from tracking on this screen**: filters have to be removed one at a time, from a named filter's view.
* **Check pacing is not adjustable.** The intervals were established by measurement — 12 checks from 45 s to 24 h, 6 of them in the first half hour.
* **Automatic archiving and automatic deletion do exist, but they are set elsewhere**: Settings → Sales. There is **no** "never" option.

<Check>
  What this screen does guarantee, on the other hand: a sale shown under “Sold” **carries Vinted's sale marker**. No caveat, no estimate, no "probably".
</Check>

***

## Going further

<CardGroup cols={2}>
  <Card title="Filters" icon="filter" href="/screens/filters">
    Where a too-wide filter gets tightened — and where a disabled detection gets switched back on.
  </Card>

  <Card title="Settings" icon="sliders-horizontal" href="/screens/settings">
    Automatic archiving and automatic deletion of sales are set in Settings → Sales.
  </Card>

  <Card title="Accounts" icon="users" href="/screens/accounts">
    The account that messages a seller, and the one that will pay for the next purchase.
  </Card>

  <Card title="Dashboard" icon="layout-dashboard" href="/screens/dashboard">
    What the radar detects upstream — before sales tracking comes into play.
  </Card>
</CardGroup>
