> For the complete documentation index, see [llms.txt](https://www.boxhero.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://www.boxhero.io/docs/other-features/analytics.md).

# Inventory Reports

The Inventory Reports feature in BoxHero helps you generate custom reports from your inventory and sales data. You can create personalized calculations and track key metrics that matter most to you.

<figure><img src="https://687823928-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlRf1QqJGoevCQqGbfI80%2Fuploads%2Fgit-blob-ddbbbff7339c6b8d9b396c551f5d467a89563617%2F%E1%84%8C%E1%85%A2%E1%84%80%E1%85%A9%20%E1%84%87%E1%85%AE%E1%86%AB%E1%84%89%E1%85%A5%E1%86%A8%20(1).png?alt=media" alt=""><figcaption></figcaption></figure>

***

## Inventory Reports Overview

In the sidebar, go to <mark style="color:$primary;">`Reports`</mark> > <mark style="color:$primary;">`Inventory`</mark>.

You can adjust formula settings to analyze your inventory data, filter results by location or date range, and export reports to Excel for recordkeeping and analysis.

<figure><img src="https://687823928-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlRf1QqJGoevCQqGbfI80%2Fuploads%2F8VpQzrhWgL3KDApwmKaQ%2Freport-inventory.jpg?alt=media&amp;token=d1620085-55c3-426c-a0ec-fc1afc86ea90" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
**Inventory reports use each item's&#x20;*****current*****&#x20;cost and price**, not the values at the time of the transaction. If you change an item's price, past reports will recalculate using the new price. For point-in-time accuracy, use <mark style="color:blue;">`Purchases & Sales`</mark> or export regularly.
{% endhint %}

## Add Formula

To add a formula, click <mark style="color:$primary;">`Formula Settings`</mark> > <mark style="color:$primary;">`Add Formula`</mark>. You'll have two options:

* **Quick Add** — pick from ready-made formulas for common metrics like profit, turnover, and more. No setup required.
* **Custom Formula** — build your own from BoxHero's variables and functions. Use it for metrics we don't offer, or to combine your own item attributes with inventory data.

<figure><img src="https://687823928-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlRf1QqJGoevCQqGbfI80%2Fuploads%2FbDVRAVhl4IUFajnV5MIz%2Freport-add%20formula%20options.jpg?alt=media&amp;token=2704f812-5468-4bf1-918b-6e4122029ef0" alt=""><figcaption></figcaption></figure>

### A. Quick Add

Add a ready-made formula and start reporting immediately.

<figure><img src="https://687823928-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlRf1QqJGoevCQqGbfI80%2Fuploads%2FYgkfDP44NTxrimkrfD93%2Fframeit_2026-07-15T00-00-56.jpg?alt=media&amp;token=c558728b-b62c-48b1-97c6-bbd650f80b38" alt=""><figcaption></figcaption></figure>

#### Item Attributes

You can use [attributes](/docs/concepts/attributes.md) with numerical values to create formulas.

#### Sales & Profit

* **Total Cost**: Cost x Total Stock In Qty
* **Total Revenue**: Price x Total Stock Out Qty
* **Net Profit**: Price - Cost
* **Gross Profit**: (Price - Cost) x Total Stock Out Qty
  * *Total profit from everything sold in the selected period.*
* **Profit Margin (%)**: (Price - Cost) ÷ Price
  * *What share of the price is profit.*
* **Avg. Daily Revenue**: (Price x Total Stock Out Qty) ÷ Number of Days
* **Avg. Daily Gross Profit**: (Price - Cost) x Total Stock Out Qty ÷ Number of Days

#### **Inventory & Movement**

* **Inventory Value**: Cost x Current Quantity
* **Inventory Turnover**: Total Stock Out Qty ÷ Average Quantity
  * *How many times you sold through your average stock. Higher means faster-moving inventory.*
* **Avg. Daily Stock In**: Total Stock In Qty ÷ Number of Days
* **Avg. Daily Stock Out**: Total Stock Out Qty ÷ Number of Days
* **Days of Stock Remaining**: Current Qty ÷ (Total Stock Out Qty ÷ Number of Days)
  * *At the current rate, how long until you run out. Use it to time reorders.*

### B. Custom Formula

Build your own formula from BoxHero's variables and functions.

<figure><img src="https://687823928-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlRf1QqJGoevCQqGbfI80%2Fuploads%2FFjSgJHwjFvzeVynbOmNZ%2Freport-formula%20settings.jpg?alt=media&amp;token=24dbf068-a033-405b-8402-83cbcc7c3bec" alt=""><figcaption></figcaption></figure>

#### Autocomplete Variables

Enter `$` to access inventory variables and `{{` to retrieve saved attributes/values.

<figure><img src="https://687823928-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlRf1QqJGoevCQqGbfI80%2Fuploads%2FqfJzuQNgnXEQugUDYGCV%2Fcustom%20formula-autocomplete.jpg?alt=media&amp;token=60681cd2-66af-4faf-8e3f-e00b7b3d7a51" alt=""><figcaption></figcaption></figure>

<table data-search="false"><thead><tr><th width="209">Variable Name</th><th>Description</th></tr></thead><tbody><tr><td><strong>Current Quantity</strong></td><td>The current inventory level of an item.</td></tr><tr><td><strong>Number of Days</strong></td><td>The number of days in the selected period.</td></tr><tr><td><strong>Average Quantity</strong></td><td>Average inventory during the selected period, calculated using the inventory quantity at 23:59:59 each day.</td></tr><tr><td><strong>Starting Quantity</strong></td><td>Inventory at the start of the selected period (23:59:59 on the <em>day before</em> the start date).</td></tr><tr><td><strong>Ending Quantity</strong></td><td>Inventory at the end of the selected period (23:59:59 on the <em>last day</em> of the period).</td></tr><tr><td><strong>Total Stock In Qty</strong></td><td>Total inbound quantity.</td></tr><tr><td><strong>Stock In Count</strong></td><td>The number of <strong>Stock</strong> <strong>In</strong> transactions during the selected period.</td></tr><tr><td><strong>Total Stock Out Qty</strong></td><td>Total outbound quantity.</td></tr><tr><td><strong>Stock Out Count</strong></td><td>The number of <strong>Stock</strong> <strong>Out</strong> transactions during the selected period.</td></tr><tr><td><strong>Weighted Avg. Stock Out (Linear 2, 3, 4)</strong></td><td><p>Average daily stock out, weighted so recent days count more. Each day in the selected period gets a weight that increases linearly, with the oldest day always weighted 1. The number sets the weight of the most recent day — 2, 3, or 4 — so a higher number makes the average more responsive to recent activity.</p><p></p><ul><li><strong>Linear 2</strong>: Oldest day has weight 1, most recent day has weight 2</li><li><strong>Linear 3</strong>: Oldest day has weight 1, most recent day has weight 3</li><li><strong>Linear 4</strong>: Oldest day has weight 1, most recent day has weight 4</li></ul></td></tr><tr><td><strong>Adjust Qty (Increase)</strong></td><td>Quantity added by <strong>Adjust Stock</strong> transactions.</td></tr><tr><td><strong>Adjust Qty (Decrease)</strong></td><td>Quantity removed by <strong>Adjust Stock</strong> transactions.</td></tr><tr><td><strong>Adjust Qty (Net)</strong></td><td>Adjust Qty (Increase) − Adjust Qty (Decrease).</td></tr><tr><td><strong>Adjust Count</strong></td><td>The number of times an <strong>Adjust</strong> transaction was made during a specific period.</td></tr><tr><td><strong>Move Qty (In)</strong></td><td>Quantity moved <em>into</em> the selected location(s) by <strong>Move Stock</strong> transactions.</td></tr><tr><td><strong>Move Qty (Out)</strong></td><td>Quantity moved <em>out of</em> the selected location(s) by <strong>Move Stock</strong> transactions.</td></tr><tr><td><strong>Move Qty (Net)</strong></td><td>Move Qty (In) − Move Qty (Out).</td></tr><tr><td><strong>Move Count (In)</strong></td><td>The number of <strong>Move Stock</strong> transactions that increased inventory at the selected location(s).</td></tr><tr><td><strong>Move Count (Out)</strong></td><td>The number of <strong>Move Stock</strong> transactions that decreased inventory at the selected location(s).</td></tr></tbody></table>

#### Available Functions

BoxHero supports a variety of functions, similar to their Excel equivalents.

<figure><img src="https://687823928-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlRf1QqJGoevCQqGbfI80%2Fuploads%2FpfVugON6ys4TRDkaWvMV%2Fcustom%20formula-functions.jpg?alt=media&amp;token=b96457f9-561a-4e3b-a7e8-3ad5f7c498b2" alt=""><figcaption></figcaption></figure>

* **Basic arithmetic:** `+`, `-`, `*`, `/`
* **Conditional**: `if(condition, value if true, value if false)`
  * Evaluates a condition and returns one value if it's true, another if it's false.
* **Rounding:**
  * **round**: `round(number, digit)`
  * **roundUp**: `roundUp(number, digit)`
  * **roundDown**: `roundDown(number, digit)`
* **Type Conversion:**
  * **toNumber**: `toNumber(string, fallback value)`
    * Converts text to a number, returning the fallback if conversion fails.
  * **toString**: `toString(number)`
    * Converts a number to text.

<figure><img src="https://687823928-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FlRf1QqJGoevCQqGbfI80%2Fuploads%2FVyBJAJ0MT0De3Y0tqCIA%2Fcustom%20formula-examples.jpg?alt=media&amp;token=69c49349-7827-4f20-85e0-228819f82b03" alt=""><figcaption></figcaption></figure>

{% hint style="success" %}
**Need something else?** <mark style="color:$primary;">`Custom Analytics`</mark> lets you query your inventory data directly with SQL. Use it for questions that don't fit a per-item formula.
{% endhint %}

***

## Frequently Asked Questions

**Looking for more info?** Browse our FAQ:

{% content-ref url="/spaces/mkYNU2xLl20GSI6NQQ6q/pages/HABeINmjzAqEWNjoxMLv" %}
[Inventory reports](/docs/faq/reporting/inventory-reports.md)
{% endcontent-ref %}
