---
title: "Compute a full RF link budget from transmitter power, frequency, distance, and antenna gains. Calculates EIRP, free-space path loss (ITU-R P.525), received power at the receiver, and link margin relative to an optional receiver sensitivity threshold. Use this to determine whether a wireless link closes with adequate margin. Accepts output from noise_figure_cascade and feeds into snr_margin for full receive-chain analysis."
method: POST
path: "/api/link_budget"
tags: ["rf"]
---

# Compute a full RF link budget from transmitter power, frequency, distance, and antenna gains. Calculates EIRP, free-space path loss (ITU-R P.525), received power at the receiver, and link margin relative to an optional receiver sensitivity threshold. Use this to determine whether a wireless link closes with adequate margin. Accepts output from noise_figure_cascade and feeds into snr_margin for full receive-chain analysis.

`POST /api/link_budget`

## Request

- Base URL: `https://calc.engineer`
- URL: `https://calc.engineer/api/link_budget`
- Auth: none declared

## Request body

- object
  - `tx_dbm` number, required: Transmitter output power in dBm
  - `freq_mhz` number, required: Carrier frequency in megahertz (MHz)
  - `dist_km` number, required: Link distance in kilometres
  - `tx_gain_dbi` number: Transmit antenna gain in dBi (default 2.15 for a half-wave dipole)
  - `rx_gain_dbi` number: Receive antenna gain in dBi (default 2.15 for a half-wave dipole)
  - `rx_sensitivity_dbm` number: Receiver sensitivity in dBm; when provided, link margin is calculated

## Response `200`

Computed result for link_budget

- object
  - `result` object, required
    - `fspl_db` number, required: Free-space path loss in dB
    - `eirp_dbm` number, required: Effective isotropic radiated power in dBm
    - `rx_power_dbm` number, required: Received signal power in dBm
    - `margin_db` number, nullable, required: Link margin in dB (null when sensitivity is not provided)
    - `wavelength_m` number, required: RF wavelength in metres
  - `tool` string, required
  - `version` string, required
  - `computed_at` string, date-time, required
  - `chain` object, required
    - `feeds` unknown[]
      - unknown
    - `accepts_from` unknown[]
      - unknown

## Other responses

- `400`: Validation error or invalid JSON
- `404`: Tool not found

---

[API](https://skmtc.dev/calc/apis/calc-engineer-api.md) · [All operations](https://skmtc.dev/calc/apis/calc-engineer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/calc/apis/calc-engineer-api/revisions/8830480ec488?raw)
