# Seller Performance Metrics

Seller Performance Metrics allow marketplaces to quantify seller operational quality using standardized KPIs. The system evaluates cancellation rates, delivery reliability, and problem frequency. Every Monday at 03:00 UTC, an automated job calculates each seller’s final grade based on the rules defined in this module. Grades are used for tiering, visibility adjustments, and penalty/bonus programs.

You can access the module here:

**Finance > Seller Performance Metrics**

On this page you configure:

* **Metric weights:** Percentage contribution of each metric to the final grade
* **Score ranges:** Min–Max value intervals mapped to scores
* **Cancellation reasons:** Filter applied only to Seller Related Delivery Problems

### <mark style="color:red;">Metric Definitions</mark>

Below is the clear internal logic for each metric.

#### Seller Cancel Rate (seller\_cancel\_rate)

Percentage of order line items cancelled by the seller within the selected date range.

**Formula:** `(cancelled_by_seller / total_order_lines) × 100`

#### Customer Cancel Rate (customer\_cancel\_rate)

Percentage of order line items cancelled by the customer, again based on the selected date range.

#### Shipment in Target Duration (shipment\_in\_target\_duration)

Measures how many orders were shipped within the seller’s promised delivery time.

The seller’s commitment is stored in:

`estimated_delivery_duration` (in days)

{% hint style="info" %}
Weekends are excluded from the calculation.
{% endhint %}

### <mark style="color:red;">Calculation Logic</mark>

For each order:

1. Retrieve all its packages
2. Get the latest `shipment_date` among these packages
3. Compare this date with: `order.created_at + estimated_delivery_duration`
4. If the shipment happened before this deadline → it is considered “in target.”

#### Seller Related Delivery Problems (seller\_related\_delivery\_problems\_ratio)

Percentage of order line items that had delivery issues caused by the seller, based on the cancellation reasons you select.

Only cancellation requests containing one of your chosen `cancellation_reasons` are included.

## <mark style="color:red;">Configuration Guide</mark>

{% stepper %}
{% step %}

#### <mark style="color:red;">Open the Metrics Page</mark>

Navigate to **Finance > Seller Performance Metrics** from the admin menu. You will see all available metrics, each containing:

* Weight (%)
* Range list (Min / Max / Score)
  {% endstep %}

{% step %}

#### <mark style="color:red;">Assign Weights</mark>

Weight determines how much each metric impacts the final grade. Total weight across all metrics must equal 100%. Otherwise the scoring engine cannot run.

**Examples**

* Four equal metrics → 25% + 25% + 25% + 25%
* Delivery-focused scoring → 60% delivery + 20% seller cancel + 20% customer cancel
  {% endstep %}

{% step %}

#### <mark style="color:red;">Configure Score Ranges</mark>

For each metric, define bands that map a raw metric value to a score.

* Calculating the metric value (e.g., 22% seller cancel rate)
* Finding the range containing this value (e.g., 0–25)
* Returning the range’s Score (e.g., Score = 5)

**Range Requirements**

* Cover the full 0–100% interval
* No overlaps (e.g., don’t use 20–40 and 40–60)
* No gaps (every value must belong somewhere)

{% hint style="success" %}
Ranges should reflect performance tiers e.g. excellent / average / poor.
{% endhint %}

![](/files/9cbf12042e137602feab6bd852c7e80357cb5fe3)
{% endstep %}

{% step %}

#### <mark style="color:red;">Add the First Range</mark>

* Click **Add Range +** inside a metric card
* Enter Min, Max, Score. Scores are typically 0–5 or 0–10, but you can use any integer scale. Be consistent across metrics
* Example for Seller Cancel Rate, where lower is better:
  * 0 to 25 → Score: 5
  * 26 to 60 → Score: 3
  * 61 to 100 → Score: 0

![](/files/58686f89f527b39c374a71c5570d34d477305940)
{% endstep %}

{% step %}

#### <mark style="color:red;">Remove Ranges (Optional)</mark>

* Click the **Delete –** icon next to a range to remove it. Use this to fix overlaps or simplify the model.

![](/files/4878d044dd0e83e3ad8cbf990c47716d35b521b9)
{% endstep %}

{% step %}

#### <mark style="color:red;">Configure Cancellation Reasons</mark>

Applies only to Seller Related Delivery Problems.

* In the metric card, locate Cancellation Reasons multi-select
* Select one or more `reason_code` values from the dropdown. Only line items with these codes will count toward the metric
* If no reasons are selected, the metric value will always be 0%

{% hint style="success" %}
Only matching cancellation requests will influence this metric.
{% endhint %}

![](/files/00bb908979025fd0e9f8f89a7aa110ac51401484)
{% endstep %}

{% step %}

#### <mark style="color:red;">Validate Configuration</mark>

Before saving, ensure:

* Total weights = 100%
* Each metric has at least one valid range
* No overlaps
* No gaps
* Score direction makes sense (e.g., lower cancel rate → higher score)
  {% endstep %}

{% step %}

#### <mark style="color:red;">Save the Configuration</mark>

Click **Save** to store your rule set. These rules will be used by the weekly automated performance scoring task.

![](/files/28c0782febc3c9e79046c8e288b742cb56857e2c)
{% endstep %}
{% endstepper %}

## <mark style="color:red;">Final Grade Calculation</mark>

{% stepper %}
{% step %}

#### <mark style="color:red;">Step 1: Convert Weight % to decimals</mark>

* 50% → 0.50
* 25% → 0.25
* 25% → 0.25
  {% endstep %}

{% step %}

#### <mark style="color:red;">Step 2: Multiply Metric Score × Weight</mark>

* Delivery: 4 × 0.50 = 2.00
* Seller cancel: 5 × 0.25 = 1.25
* Customer cancel: 3 × 0.25 = 0.75
  {% endstep %}

{% step %}

#### <mark style="color:red;">Step 3: Sum all metric contributions</mark>

Final Grade = 2.00 + 1.25 + 0.75 = 4.00
{% endstep %}
{% endstepper %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.akinon.com/tutorials/seller-center/marketplace-owner/finance/seller-performance-metrics.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
