# Shelf spacing calculator

- Human page: https://happytails.ai/en/calculators/shelf-spacing-calculator/
- Markdown: https://happytails.ai/en/calculators/shelf-spacing-calculator.md
- Structured JSON: https://happytails.ai/agents/en/calculators/shelf-spacing-calculator/index.json
- Visibility: public

## Tool capabilities

| Property | Value |
| --- | --- |
| Tool ID | `shelf-spacing-calculator` |
| Category | calculators |
| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |
| Browser execution | Automatic updates after valid input or file selection. |
| Browser processing | Browser; see tool notes for network behavior. |
| HTTP API | Not callable through HTTP. |
| Browser-agent interface | run_current_tool |

### Implementation notes

Calculated on your device for internal heights up to 5 m and up to 100 shelves, with optional snapping to shelf-pin holes.

### Inputs and settings

No free-text input is required. Use the file inputs and/or settings below.

| Setting | Meaning | Control type | Default | Constraints |
| --- | --- | --- | --- | --- |
| `unit` | Measurement unit | select | "mm" | Allowed: mm, cm, in |
| `height` | Internal height | number | 1800 | min=0 step=any |
| `thickness` | Shelf thickness | number | 18 | min=0 step=any |
| `mode` | Plan by | select | "Number of shelves" | Allowed: Number of shelves, Largest gap |
| `count` | Adjustable shelves | number | 4 | min=1 max=100 step=1 |
| `maxGap` | Largest gap between shelves | number | 350 | min=0 step=any |
| `bottomClearance` | Clear space at the bottom | number | 0 | min=0 step=any |
| `topClearance` | Clear space at the top | number | 0 | min=0 step=any |
| `pitch` | Pin hole spacing (optional) | number | 32 | min=0 step=any |
| `firstHole` | Height of the first pin hole | number | 32 | min=0 step=any |

### Browser-agent workflow

1. Open the human page in a browser that supports WebMCP.
2. Discover the interface exposed by that page; use its actual schema.
3. Select files on the page first when the tool requires files.
4. Call `run_current_tool` with valid input and settings.
5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.

Calls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.

### Planning specification

Internal height above 0 and up to 5 m, shelf thickness up to 200 mm, 1 to 100 shelves, clear spaces up to 5 m, pin hole spacing up to 500 mm. Calculated on your device; download a JSON report and CSV files of results and shelf positions.

This describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.

### Complete machine-readable capability record

```json
{
  "id": "shelf-spacing-calculator",
  "category": "calculators",
  "built": true,
  "requirements": "Internal height above 0 and up to 5 m, shelf thickness up to 200 mm, 1 to 100 shelves, clear spaces up to 5 m, pin hole spacing up to 500 mm. Calculated on your device; download a JSON report and CSV files of results and shelf positions.",
  "implementation": {
    "fields": [
      {
        "key": "unit",
        "label": "Measurement unit",
        "value": "mm",
        "type": "select",
        "values": [
          "mm",
          "cm",
          "in"
        ]
      },
      {
        "key": "height",
        "label": "Internal height",
        "value": 1800,
        "type": "number",
        "min": 0,
        "step": "any",
        "help": "From the top of the base to the underside of the top panel."
      },
      {
        "key": "thickness",
        "label": "Shelf thickness",
        "value": 18,
        "type": "number",
        "min": 0,
        "step": "any"
      },
      {
        "key": "mode",
        "label": "Plan by",
        "value": "Number of shelves",
        "type": "select",
        "values": [
          "Number of shelves",
          "Largest gap"
        ]
      },
      {
        "key": "count",
        "label": "Adjustable shelves",
        "value": 4,
        "type": "number",
        "min": 1,
        "max": 100,
        "step": 1,
        "showWhen": {
          "mode": [
            "Number of shelves"
          ]
        }
      },
      {
        "key": "maxGap",
        "label": "Largest gap between shelves",
        "value": 350,
        "type": "number",
        "min": 0,
        "step": "any",
        "showWhen": {
          "mode": [
            "Largest gap"
          ]
        }
      },
      {
        "key": "bottomClearance",
        "label": "Clear space at the bottom",
        "value": 0,
        "type": "number",
        "min": 0,
        "step": "any",
        "help": "Kept free above the base, for example for tall items. Shelves start above it."
      },
      {
        "key": "topClearance",
        "label": "Clear space at the top",
        "value": 0,
        "type": "number",
        "min": 0,
        "step": "any"
      },
      {
        "key": "pitch",
        "label": "Pin hole spacing (optional)",
        "value": 32,
        "type": "number",
        "min": 0,
        "step": "any",
        "help": "Leave empty for exact positions without snapping.",
        "required": false
      },
      {
        "key": "firstHole",
        "label": "Height of the first pin hole",
        "value": 32,
        "type": "number",
        "min": 0,
        "step": "any",
        "help": "Centre of the lowest hole, measured from the top of the base."
      }
    ],
    "registrationFamily": "household-planning",
    "input": false,
    "live": true,
    "presentation": "metrics",
    "note": "Calculated on your device for internal heights up to 5 m and up to 100 shelves, with optional snapping to shelf-pin holes.",
    "experience": {
      "automatic": true,
      "single": true,
      "inputMaxLength": 1000000,
      "inputMode": "text",
      "label": "Cabinet measurements",
      "placeholder": "Use the fields below",
      "help": "This calculator uses the measurement fields only. Results update as you type. Up to 1,000,000 characters.",
      "action": null
    },
    "mode": "automatic",
    "interactive": false
  },
  "execution": "Browser interface",
  "api": null,
  "browser_agent": {
    "supported": true,
    "name": "run_current_tool",
    "discovery": "WebMCP on the human page in a supporting browser",
    "verification": "See audit/API-AUDIT.md; availability is not verification"
  }
}
```

## Page guide

Space shelves evenly inside a cabinet or bookcase from its internal height and shelf thickness, by shelf count or by the largest gap you want. Optionally snap each shelf to the nearest pin hole.

How can we improve this tool?

Report a problem or share an idea.

Please leave out private information. Your message and the tool name go to our team via PostHog.

### How to use Shelf spacing calculator

1. Choose the unit and enter the internal height and the shelf thickness.
2. Choose whether to plan by number of shelves or by the largest gap.
3. Add clear space at the bottom or top if part of the height must stay free.
4. Enter the pin hole spacing and first hole height to snap shelves, or leave the spacing empty, then download the positions.

## Useful next steps

- [Baluster spacing calculator](https://happytails.ai/en/calculators/baluster-spacing-calculator/) ([Markdown](https://happytails.ai/en/calculators/baluster-spacing-calculator.md))

- [Leather hole spacing calculator](https://happytails.ai/en/calculators/leather-hole-spacing-calculator/) ([Markdown](https://happytails.ai/en/calculators/leather-hole-spacing-calculator.md))

- [Volume calculator](https://happytails.ai/en/calculators/volume-calculator/) ([Markdown](https://happytails.ai/en/calculators/volume-calculator.md))

## Equal gaps

Shelves share the height between the clear spaces, so every gap below, between and above them is the same: gap = (height − shelves × thickness) ÷ (shelves + 1). For an 1,800 mm cabinet with four 18 mm shelves, each gap is 345.6 mm and the first shelf underside sits 345.6 mm above the base.

### Planning by the largest gap

In largest-gap mode the calculator finds the fewest shelves that keep every equal gap at or below your limit. A 72 in bookcase with 0.75 in shelves, 4 in kept clear at the bottom and a 12 in limit needs 5 shelves with gaps of about 10.71 in. Snapping to pin holes can then push one gap above your limit; the report warns you when that happens.

### Snapping to pin holes

Shelf-pin cabinets drill holes at a fixed pitch, commonly 32 mm in the 32 mm cabinetmaking system (Wikipedia, checked 16 October 2026). Each shelf moves to the nearest hole centre and the table shows the shift and the new gaps. With 32 mm holes starting at 32 mm, the example gaps become 334 to 366 mm.

### Limits

Internal heights up to 5 m, shelves up to 200 mm thick and up to 100 shelves. Positions are measured from the top of the base. Pin and support sizes are not modelled; a layout whose snapped shelves would overlap is rejected.
