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

# Urgency Messaging

> Drive conversions with 'Only X left' and 'Selling Fast' on product pages

Urgency messaging uses real inventory data to create authentic scarcity signals. Unlike fake countdown timers, these messages reflect your actual stock position - building trust and driving conversions.

## "Only X days left"

Show a countdown based on how quickly the current variant is selling through:

```liquid theme={null}
{% assign variant = product.selected_or_first_available_variant %}
{% assign days = variant.metafields.app--326028230657--stockful.days_of_supply.value %}
{% assign status = variant.metafields.app--326028230657--stockful.stock_status.value %}

{% if status != "out_of_stock" and days and days <= 14 %}
  <div style="
    display: flex;
    align-items: center;
    gap: 0.5em;
    padding: 0.6em 0.8em;
    background: #fff7ed;
    border-radius: 6px;
    font-size: 0.9em;
    color: #9a3412;
  ">
    {% if days <= 3 %}
      <strong>Almost gone</strong> - only {{ days }} {{ days | pluralize: 'day', 'days' }} of stock left
    {% elsif days <= 7 %}
      <strong>Selling quickly</strong> - {{ days }} days of stock remaining
    {% else %}
      Only {{ days }} days of stock left at current pace
    {% endif %}
  </div>
{% endif %}
```

### Choosing the right threshold

| Days of supply | Suggested messaging | Urgency level |
| -------------- | ------------------- | ------------- |
| 1-3            | "Almost gone"       | High          |
| 4-7            | "Selling quickly"   | Medium        |
| 8-14           | "Only X days left"  | Low           |
| 15+            | No message          | None          |

Adjust the threshold (`<= 14` in the example) to match your restock cadence. If you restock weekly, 7 days is normal - only show urgency below that.

## "Selling Fast"

Flag products with high sell-through velocity:

```liquid theme={null}
{% assign variant = product.selected_or_first_available_variant %}
{% assign trend = variant.metafields.app--326028230657--stockful.velocity_trend.value %}
{% assign sold = variant.metafields.app--326028230657--stockful.sold_last_30d.value %}

{% if trend == "selling_fast" %}
  <div style="
    display: inline-flex;
    align-items: center;
    gap: 0.4em;
    padding: 0.35em 0.75em;
    color: #7c3aed;
    font-size: 0.9em;
    font-weight: 500;
  ">
    <span style="
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: #7c3aed;
    "></span>
    Selling Fast{% if sold and sold > 10 %} - {{ sold }} sold recently{% endif %}
  </div>
{% endif %}
```

## Combined urgency block

Combine multiple signals for maximum impact:

```liquid theme={null}
{% assign variant = product.selected_or_first_available_variant %}
{% assign status = variant.metafields.app--326028230657--stockful.stock_status.value %}
{% assign days = variant.metafields.app--326028230657--stockful.days_of_supply.value %}
{% assign trend = variant.metafields.app--326028230657--stockful.velocity_trend.value %}
{% assign sold = variant.metafields.app--326028230657--stockful.sold_last_30d.value %}
{% assign restock = variant.metafields.app--326028230657--stockful.restock_status.value %}

{% if status == "out_of_stock" %}
  <div class="stockful-urgency stockful-urgency--oos">
    <strong>Out of stock</strong>
    {% if restock == "pending" %}
      - restock on the way
    {% endif %}
  </div>

{% elsif status == "low_stock" %}
  <div class="stockful-urgency stockful-urgency--low">
    {% if days and days <= 7 %}
      <strong>Almost gone</strong> - only {{ days }} {{ days | pluralize: 'day', 'days' }} left
    {% else %}
      <strong>Low stock</strong>
    {% endif %}
    {% if trend == "selling_fast" and sold and sold > 10 %}
      <span class="stockful-urgency__social">{{ sold }} sold in the last 30 days</span>
    {% endif %}
  </div>

{% elsif trend == "selling_fast" %}
  <div class="stockful-urgency stockful-urgency--fast">
    <strong>Selling fast</strong>
    {% if sold and sold > 20 %}
      - {{ sold }}+ sold recently
    {% endif %}
  </div>
{% endif %}
```

```css theme={null}
.stockful-urgency {
  padding: 0.6em 0.8em;
  border-radius: 6px;
  font-size: 0.9em;
  margin: 0.5em 0;
}
.stockful-urgency--oos { background: #fef2f2; color: #991b1b; }
.stockful-urgency--low { background: #fff7ed; color: #9a3412; }
.stockful-urgency--fast { background: #f3e8ff; color: #6b21a8; }
.stockful-urgency__social {
  display: block;
  font-size: 0.85em;
  opacity: 0.8;
  margin-top: 0.2em;
}
```

## Best practices

* **Use real data** - Stockful's urgency signals are based on actual sell-through velocity and inventory levels, not arbitrary numbers
* **Don't overdo it** - if every product shows urgency, none of it feels urgent. Reserve strong messaging for genuinely low-stock or fast-selling items
* **Match your restock cadence** - a 7-day supply isn't urgent if you restock weekly
* **Combine signals thoughtfully** - "Low Stock + Selling Fast + 87 sold" is more convincing than any single signal
* **Respect the customer** - these messages should inform, not pressure. If stock is healthy, show nothing
