> This page is for Developer.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.bigcommerce.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.bigcommerce.com/_mcp/server.

# Variant

GraphQL object

Variant

Reference: https://docs.bigcommerce.com/developer/api-reference/graphql/storefront/types/objects/variant

## Fields

- `id` — The ID of an object
- `entityId` — Id of the variant.
- `sku` — Sku of the variant.
- `weight` — The variant's weight. If a weight was not explicitly specified on the variant, this will be the product's weight.
- `height` — The variant's height. If a height was not explicitly specified on the variant, this will be the product's height.
- `width` — The variant's width. If a width was not explicitly specified on the variant, this will be the product's width.
- `depth` — The variant's depth. If a depth was not explicitly specified on the variant, this will be the product's depth.
- `options` — The options which define a variant.
- `productOptions` — Product options that compose this variant.
- `defaultImage` — Default image for a variant.
- `prices` — Variant prices
- `inventory` — Variant inventory
- `metafields` — Metafield data related to a variant.
- `upc` — Universal product code.
- `mpn` — Manufacturer part number.
- `gtin` — Global trade item number.
- `isPurchasable` — Whether the product can be purchased

## Definition

```graphql
type Variant implements Node {
  id: String!
  entityId: Int!
  sku: String!
  weight: Measurement
  height: Measurement
  width: Measurement
  depth: Measurement
  options(before: String, after: String, first: Int, last: Int): OptionConnection!
  productOptions(before: String, after: String, first: Int, last: Int): ProductOptionConnection!
  defaultImage: Image
  prices(includeTax: Boolean, currencyCode: currencyCode): Prices
  inventory: VariantInventory
  metafields(namespace: String!, keys: [String!], before: String, after: String, first: Int, last: Int): MetafieldConnection!
  upc: String
  mpn: String
  gtin: String
  isPurchasable: Boolean!
}
```