---
title: "Pallet Fitting Calculator"
method: GET
path: "/api/pallet"
tags: ["Calculators"]
---

# Pallet Fitting Calculator

`GET /api/pallet`

## Request

- Base URL: `https://www.freightutils.com`
- URL: `https://www.freightutils.com/api/pallet`
- Auth: none declared

Calculate how many boxes fit on a pallet, including layers, orientation, volume utilisation, and weight limits.

## Query parameters

- `pl` number, required
- `pw` number, required
- `pmh` number, required
- `bl` number, required
- `bw` number, required
- `bh` number, required
- `ph` number
- `bwt` number
- `mpw` number
- `rotate` boolean

## Response `200`

Successful pallet fitting calculation.

- PalletFittingResponse
  - `boxes_per_layer` integer, required: Number of boxes fitting in a single layer.
  - `layers` integer, required: Number of layers that fit within the height constraint.
  - `total_boxes` integer, required: Total number of boxes fitting on the pallet.
  - `orientation` 'standard' | 'rotated', required: Whether boxes were rotated for best fit.
  - `boxes_per_row` integer, required: Number of boxes per row along the pallet length.
  - `boxes_per_col` integer, required: Number of boxes per column along the pallet width.
  - `usable_height_cm` number, required: Usable stacking height after subtracting deck height.
  - `utilisation_percent` number, required: Volume utilisation percentage.
  - `total_box_volume_cbm` number, required: Total volume of all boxes in CBM.
  - `pallet_volume_cbm` number, required: Usable pallet volume in CBM.
  - `wasted_space_cbm` number, required: Wasted space in CBM.
  - `weight_limited` boolean, required: Whether the result was limited by weight rather than space.
  - `total_weight_kg` number, nullable, required: Total weight of all boxes, or null if box weight not provided.
  - `remaining_weight_capacity_kg` number, nullable, required: Remaining weight capacity, or null if not applicable.
  - `meta` object, required
    - `inputs` PalletFittingMetaInputs
      - `pallet_length_cm` number
      - `pallet_width_cm` number
      - `pallet_max_height_cm` number
      - `pallet_height_cm` number
      - `box_length_cm` number
      - `box_width_cm` number
      - `box_height_cm` number
      - `box_weight_kg` number, nullable
      - `max_payload_weight_kg` number, nullable
      - `allow_rotation` boolean
  - `_source` SourceEnvelope: Additive provenance citation for the dataset or method behind this response, from FreightUtils' single provenance source of truth. Shapes: reference, methodology (calculators), or reference with provenance_status:'pending-verification'. Fields appear only when a real value exists.
    - `type` 'reference' | 'methodology', required
    - `authority` string
    - `dataset` string
    - `source_url` string
    - `data_vintage` string
    - `licence` string
    - `retrieved_via` string
    - `standard` string
    - `reference` string
    - `computed_by` string
    - `provenance_status` 'pending-verification'
    - `dataset_edition` string: Edition this response is served from (editioned reference datasets only), e.g. 'UN/LOCODE 2025-1'.
    - `authority_current_edition` string: The authority's current in-force edition at the last check. Differs from dataset_edition only when the served data lags the authority.
    - `checked_at` string: YYYY-MM-DD of the last served-vs-authority edition comparison (on-demand checker, staleness-guarded).

## Other responses

- `400`: Invalid or missing parameters.

---

[API](https://skmtc.dev/freightutils/apis/freightutils-api.md) · [All operations](https://skmtc.dev/freightutils/apis/freightutils-api/llms.txt) · [OpenAPI document](https://skmtc.dev/freightutils/apis/freightutils-api/revisions/6607bb3cea90?raw)
