---
title: inventory_adjustment_history
description: >-
  Reference for the ShopifyQL `inventory_adjustment_history` table. Every metric
  and dimension, paired with worked example queries.
api_version: 2026-07
source_url:
  html: >-
    https://shopify.dev/docs/api/shopifyql/latest/schemas/inventory/inventory_adjustment_history
  md: >-
    https://shopify.dev/docs/api/shopifyql/latest/schemas/inventory/inventory_adjustment_history.md
api_name: shopifyql
---

# inventory\_​adjustment\_​history

The `inventory_adjustment_history` [schema](https://shopify.dev/docs/api/shopifyql/latest/schemas) captures event-level inventory adjustments. It's the best source for tracing how an inventory quantity changed, who or what initiated it, and which reference document explains the change.

### Use cases

* **State changes**: Group [`inventory_adjustment_change`](#inventoryadjustmenthistorymetric-propertydetail-inventoryadjustmentchange) by [`inventory_state`](#inventoryadjustmenthistorydimension-propertydetail-inventorystate) to split adjustments across available, reserved, damaged, and other states.
* **Attribution**: Count [`inventory_adjustment_count`](#inventoryadjustmenthistorymetric-propertydetail-inventoryadjustmentcount) by [`inventory_app_name`](#inventoryadjustmenthistorydimension-propertydetail-inventoryappname) or [`staff_id`](#inventoryadjustmenthistorydimension-propertydetail-staffid) to break adjustments down by app or staff.
* **Source documents**: Use [`reference_document_uri`](#inventoryadjustmenthistorydimension-propertydetail-referencedocumenturi), [`reference_document_type`](#inventoryadjustmenthistorydimension-propertydetail-referencedocumenttype), and [`reference_document_id`](#inventoryadjustmenthistorydimension-propertydetail-referencedocumentid) to connect adjustments to their source documents.
* **Item drill-down**: Filter by [`inventory_item_id`](#inventoryadjustmenthistorydimension-propertydetail-inventoryitemid) or [`product_variant_id`](#inventoryadjustmenthistorydimension-propertydetail-productvariantid) when investigating adjustments for a specific item.

Examples

### Examples

* ####

  ##### Description

  Break down \`inventory\_adjustment\_count\` this quarter by change reason and inventory state, against the prior quarter. This example uses \[\`PERCENT\_CHANGE\`]\(/docs/api/shopifyql/latest/syntax/with#percent-change-columns) to show whether shrinkage, restocks, or corrections are driving more adjustments than last quarter.

  ##### ShopifyQL

  ```shopifyql
  FROM inventory_adjustment_history
    SHOW inventory_adjustment_change, inventory_adjustment_count
    GROUP BY inventory_change_reason, inventory_state WITH TOTALS, PERCENT_CHANGE
    DURING this_quarter
    COMPARE TO previous_period
    ORDER BY inventory_adjustment_count DESC
    LIMIT 50
  VISUALIZE inventory_adjustment_count TYPE stacked_horizontal_bar
  ```

* ####

  ##### Description

  List net \`inventory\_adjustment\_change\` by variant SKU, staff member, and reason over the last 30 days. This example uses \[\`WHERE\`]\(/docs/api/shopifyql/latest/syntax/where) \`inventory\_change\_reason IN ('restock', 'correction')\` to isolate manual stock work.

  ##### ShopifyQL

  ```shopifyql
  FROM inventory_adjustment_history
    SHOW inventory_adjustment_change
    WHERE inventory_change_reason IN ('restock', 'correction')
      AND staff_member_name IS NOT NULL
    GROUP BY product_variant_sku, staff_member_name, inventory_change_reason WITH
      TOTALS
    HAVING inventory_adjustment_change != 0
    SINCE startOfDay(-30d) UNTIL today
    ORDER BY inventory_adjustment_change DESC
    LIMIT 100
  VISUALIZE inventory_adjustment_change TYPE table
  ```

* ####

  ##### Description

  Track weekly \`inventory\_adjustment\_count\` across this quarter, with \`inventory\_adjustment\_change\`. This example uses \[\`WHERE\`]\(/docs/api/shopifyql/latest/syntax/where) \`inventory\_change\_reason IN ('restock', 'correction')\` to keep only restock and correction adjustments.

  ##### ShopifyQL

  ```shopifyql
  FROM inventory_adjustment_history
    SHOW inventory_adjustment_change, inventory_adjustment_count
    WHERE inventory_change_reason IN ('restock', 'correction')
    TIMESERIES week WITH TOTALS
    DURING this_quarter
    ORDER BY week ASC
  VISUALIZE inventory_adjustment_count TYPE bar
  ```

* ####

  ##### Description

  Track weekly \`inventory\_adjustment\_count\` across this quarter, each week compared to the quarter before. This example uses \[\`COMPARE TO previous\_period\`]\(/docs/api/shopifyql/latest/syntax/compare-to) to benchmark your date range against the equal-length period right before it.

  ##### ShopifyQL

  ```shopifyql
  FROM inventory_adjustment_history
    SHOW inventory_adjustment_count
    TIMESERIES week WITH PERCENT_CHANGE
    DURING this_quarter
    COMPARE TO previous_period
    ORDER BY week ASC
  VISUALIZE inventory_adjustment_count TYPE line
  ```

***

## Metrics

Counts and calculations that let you track key business indicators. Metrics show up as the columns when queried.

Metrics you can use when querying `FROM inventory_adjustment_history`.

* **inventory\_​adjustment\_​change**

  **INTEGER**

  The net quantity added or removed by inventory adjustments. Positive values increase inventory, and negative values reduce inventory.

* **inventory\_​adjustment\_​count**

  **INTEGER**

  The number of inventory adjustments where the quantity changed.

### INTEGER

A whole number without decimal places, used for counts, quantities, and other discrete numeric values.

```ts
```

***

## Dimensions

Attributes of your data that let you look more granularly at aspects of the data. Group and filter by dimensions to shape the rows your query returns.

Dimensions you can use when querying `FROM inventory_adjustment_history`.

* **day**

  **DAY\_TIMESTAMP**

  The calendar day when inventory quantities were adjusted.

* **day\_​of\_​week**

  **DAY\_OF\_WEEK**

  The day of the week an inventory adjustment was made, with values Monday through Sunday.

* **hour**

  **HOUR\_TIMESTAMP**

  The hour when inventory quantities were adjusted.

* **hour\_​of\_​day**

  **HOUR\_OF\_DAY**

  The hour of day an inventory adjustment was made, with values 0 through 23.

* **inventory\_​adjustment\_​group\_​id**

  **IDENTITY**

  The Shopify identifier for a set of related inventory adjustments.

* **inventory\_​adjustment\_​id**

  **IDENTITY**

  The Shopify identifier for a single inventory adjustment. Use [`inventory_adjustment_id`](#inventoryadjustmenthistorydimension-propertydetail-inventoryadjustmentid) to look up or filter to a specific adjustment.

* **inventory\_​app\_​id**

  **IDENTITY**

  The Shopify identifier for the app that made the inventory adjustment. Use [`inventory_app_id`](#inventoryadjustmenthistorydimension-propertydetail-inventoryappid) with [`inventory_app_name`](#inventoryadjustmenthistorydimension-propertydetail-inventoryappname) to show readable app labels.

* **inventory\_​app\_​name**

  **STRING**

  Name of the inventory app that made the adjustment

* **inventory\_​change\_​reason**

  **STRING**

  The reason specified for the inventory adjustment, such as Correction, Restock, Manual Adjustment, or Transfer Received.

* **inventory\_​group\_​id**

  **IDENTITY**

  Grouping of inventory items based on where they physically reside

* **inventory\_​item\_​id**

  **IDENTITY**

  The Shopify identifier for the inventory item that was adjusted. Use [`inventory_item_id`](#inventoryadjustmenthistorydimension-propertydetail-inventoryitemid) to track changes for a specific item or compare adjusted items across locations.

* **inventory\_​state**

  **STRING**

  The affected stock category, such as Available, Committed, Reserved, or Incoming. Committed means inventory allocated to confirmed orders that haven't been fulfilled.

* **minute**

  **MINUTE\_TIMESTAMP**

  The minute when inventory quantities were adjusted.

* **month**

  **MONTH\_TIMESTAMP**

  The calendar month when inventory quantities were adjusted.

* **month\_​of\_​year**

  **MONTH\_OF\_YEAR**

  The month of the year an inventory adjustment was made, with values 1 through 12.

* **product\_​variant\_​id**

  **IDENTITY**

  The Shopify identifier for the product variant whose inventory was adjusted. Use [`product_variant_id`](#inventoryadjustmenthistorydimension-propertydetail-productvariantid) with [`product_variant_title`](#inventoryadjustmenthistorydimension-propertydetail-productvarianttitle) or [`product_variant_sku`](#inventoryadjustmenthistorydimension-propertydetail-productvariantsku) to show variant titles or SKUs.

* **quarter**

  **QUARTER\_TIMESTAMP**

  The calendar quarter when inventory quantities were adjusted.

* **reference\_​document\_​id**

  **IDENTITY**

  The Shopify identifier for the resource named by [`reference_document_uri`](#inventoryadjustmenthistorydimension-propertydetail-referencedocumenturi). This value is present when [`reference_document_uri`](#inventoryadjustmenthistorydimension-propertydetail-referencedocumenturi) points to a Shopify resource.

* **reference\_​document\_​type**

  **STRING**

  The kind of Shopify resource named by [`reference_document_uri`](#inventoryadjustmenthistorydimension-propertydetail-referencedocumenturi). This value is present when [`reference_document_uri`](#inventoryadjustmenthistorydimension-propertydetail-referencedocumenturi) points to a Shopify resource.

* **reference\_​document\_​uri**

  **STRING**

  The freeform reference that explains why the inventory change happened. The value might come from Shopify or an external tool.

* **second**

  **SECOND\_TIMESTAMP**

  The second when inventory quantities were adjusted.

* **shop\_​id**

  **IDENTITY**

  The unique Shopify identifier for your store. Use [`shop_id`](#inventoryadjustmenthistorydimension-propertydetail-shopid) with [`shop_name`](#inventoryadjustmenthistorydimension-propertydetail-shopname) to show readable store labels.

* **staff\_​id**

  **IDENTITY**

  The Shopify identifier for the staff member who made the inventory adjustment. Use [`staff_id`](#inventoryadjustmenthistorydimension-propertydetail-staffid) with [`staff_member_name`](#inventoryadjustmenthistorydimension-propertydetail-staffmembername) to show readable staff labels.

* **week**

  **WEEK\_TIMESTAMP**

  The week when inventory quantities were adjusted.

* **week\_​of\_​year**

  **WEEK\_OF\_YEAR**

  The week of the year an inventory adjustment was made, with values 1 through 53.

* **year**

  **YEAR\_TIMESTAMP**

  The calendar year when inventory quantities were adjusted.

* **inventory\_​location\_​id**

  **IDENTITY**

  Shopify identifier for the inventory location

* **inventory\_​location\_​name**

  **STRING**

  Name of the inventory location

* **shop\_​name**

  **STRING**

  Name of your store

* **inventory\_​cost\_​is\_​recorded**

  **BOOLEAN**

  Whether the inventory item has a cost saved in Shopify, with values `true` and `false`.

* **inventory\_​is\_​tracked**

  **BOOLEAN**

  Whether Shopify tracks inventory adjustments for the inventory item, with values `true` and `false`.

* **inventory\_​item\_​cost**

  **MONEY**

  The cost recorded for one unit of the inventory item, in your store's currency.

* **product\_​variant\_​sku**

  **STRING**

  SKU of the product variant

* **product\_​variant\_​title**

  **STRING**

  Display name of the product variant

* **staff\_​member\_​name**

  **STRING**

  Name of the staff member associated with the order

### DAY\_TIMESTAMP

A date value truncated to day precision.

```ts
```

### DAY\_OF\_WEEK

A day within a week, used for weekday-based grouping and filtering.

```ts
```

### HOUR\_TIMESTAMP

A timestamp truncated to hour precision.

```ts
```

### HOUR\_OF\_DAY

An hour within a day, typically represented as an integer from 0 to 23.

```ts
```

### IDENTITY

A unique identifier for a Shopify resource such as a customer, product, or order.

```ts
```

### STRING

A sequence of characters representing text data.

```ts
```

### MINUTE\_TIMESTAMP

A timestamp truncated to minute precision.

```ts
```

### MONTH\_TIMESTAMP

A date value representing the start of a month.

```ts
```

### MONTH\_OF\_YEAR

A month number within a year.

```ts
```

### QUARTER\_TIMESTAMP

A date value representing the start of a fiscal quarter.

```ts
```

### SECOND\_TIMESTAMP

A timestamp truncated to second precision.

```ts
```

### WEEK\_TIMESTAMP

A date value representing the start of a week.

```ts
```

### WEEK\_OF\_YEAR

A week number within a year.

```ts
```

### YEAR\_TIMESTAMP

A date value representing the start of a year.

```ts
```

### BOOLEAN

A true or false value representing binary states.

```ts
```

### MONEY

A monetary amount representing currency values such as prices, revenue, costs, and discounts.

```ts
```

***

## Related schemas

* [`inventory`](https://shopify.dev/docs/api/shopifyql/latest/schemas/inventory/inventory): Store-wide inventory state affected by these adjustments.
* [`inventory_by_location`](https://shopify.dev/docs/api/shopifyql/latest/schemas/inventory/inventory_by_location): Location-level inventory affected by adjustments.
* [`inventory_shipments`](https://shopify.dev/docs/api/shopifyql/latest/schemas/inventory/inventory_shipments): Incoming shipment data alongside manual adjustments.
* [`inventory_transfers`](https://shopify.dev/docs/api/shopifyql/latest/schemas/inventory/inventory_transfers): Stock moves between locations alongside manual adjustments.

***
