{
  "$schema": "https://degreesofsatoshi.com/encyclopedia/schemas/article-v1.json",
  "schemaVersion": "1.0.0",
  "id": "lightning-routing-fees",
  "canonical": "https://degreesofsatoshi.com/encyclopedia/lightning-routing-fees/",
  "collection": "bitcoin",
  "title": "Lightning routing fees: base fees and proportional fees",
  "description": "Calculate a Lightning forwarding fee from a base charge and proportional rate, and distinguish routing fees from on-chain channel costs.",
  "aliases": [],
  "dates": {
    "published": "2026-10-02",
    "modified": "2026-10-02",
    "verified": "2026-10-02T18:15:23.891Z",
    "dataAsOf": "2026-10-02"
  },
  "authorship": {
    "publisher": "Degrees of Satoshi editorial project",
    "process": "AI-assisted research and drafting with a separate automated source-verification pass; no external expert or named human review is implied."
  },
  "quickAnswer": {
    "text": "Lightning channel updates advertise direction-specific forwarding fees, commonly a base fee plus a proportional rate in millionths of the forwarded amount. A multi-hop route can incur multiple forwarding charges. These are separate from the Bitcoin transaction fees involved in opening or closing channels.",
    "claimId": "lightning-routing-fees-quick-answer",
    "sourceIds": [
      "bolt7",
      "bolt2"
    ]
  },
  "keyFacts": [
    {
      "label": "Base unit",
      "value": "fee_base_msat is denominated in millisatoshis.",
      "sourceIds": [
        "bolt7"
      ],
      "id": "base-unit",
      "claimId": "lightning-routing-fees-fact-base-unit"
    },
    {
      "label": "Proportional unit",
      "value": "fee_proportional_millionths uses parts per million of the forwarded amount.",
      "sourceIds": [
        "bolt7"
      ],
      "id": "proportional-unit",
      "claimId": "lightning-routing-fees-fact-proportional-unit"
    },
    {
      "label": "Direction",
      "value": "Channel update parameters apply to a direction, not one universal fee for both peers.",
      "sourceIds": [
        "bolt7"
      ],
      "id": "direction",
      "claimId": "lightning-routing-fees-fact-direction"
    }
  ],
  "prerequisites": [
    "lightning-payment-channels"
  ],
  "sections": [
    {
      "id": "formula",
      "heading": "Use consistent units",
      "sourceIds": [
        "bolt7"
      ],
      "paragraphs": [
        "The advertised calculation is base fee plus amount to forward multiplied by the proportional rate divided by 1,000,000. For an illustrative 1,000-msat base fee, 100 ppm rate and 100,000-satoshi forward, the proportional part is 10 satoshis and the base is 1 satoshi: 11 satoshis in total.",
        "Amounts and rounding must follow the implementation’s integer units. A rate of 100 ppm is 0.01%, not 100%."
      ]
    },
    {
      "id": "route",
      "heading": "A route is built backward from the delivered amount",
      "sourceIds": [
        "bolt7"
      ],
      "paragraphs": [
        "An earlier hop must forward enough to cover what later hops require. Adding the same percentage once to the final payment can therefore misstate the total cost of a multi-hop route.",
        "The sender evaluates fees alongside available liquidity and timing requirements. A channel advertising a low fee may still be unable to carry the payment."
      ]
    },
    {
      "id": "different-cost",
      "heading": "Do not confuse forwarding with channel funding",
      "sourceIds": [
        "bolt2",
        "bolt7"
      ],
      "paragraphs": [
        "Opening and closing channels use Bitcoin transactions whose fees depend on their size and network conditions. Forwarding fees compensate route participation under channel policy.",
        "A wallet or service can also impose its own charges. A useful fee display separates the amount delivered, route fees and any additional service or on-chain costs."
      ]
    }
  ],
  "faq": [
    {
      "question": "Are Lightning payments always free?",
      "answer": "No. Some routes may charge very little or have zero advertised components, but forwarding, service and channel-management costs depend on the actual payment path and wallet arrangement.",
      "sourceIds": [
        "bolt7",
        "bolt2"
      ]
    }
  ],
  "claims": [
    {
      "id": "lightning-routing-fees-quick-answer",
      "articleSlug": "lightning-routing-fees",
      "statement": "Lightning channel updates advertise direction-specific forwarding fees, commonly a base fee plus a proportional rate in millionths of the forwarded amount. A multi-hop route can incur multiple forwarding charges. These are separate from the Bitcoin transaction fees involved in opening or closing channels.",
      "sourceIds": [
        "source-d55abd3fe3dfc8b1",
        "source-b9dd1646f089b1a7"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-d55abd3fe3dfc8b1",
          "locator": "The channel_update Message; HTLC Fees; Example; fee_base_msat; fee_proportional_millionths"
        },
        {
          "sourceId": "source-b9dd1646f089b1a7",
          "locator": "Channel Establishment; Forwarding HTLCs; Channel Close"
        }
      ],
      "scope": {
        "collection": "bitcoin",
        "dataAsOf": "2026-10-02",
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T18:15:23.891Z",
        "reviewer": "Independent automated verification agent verify_bitcoin_stablecoins_100",
        "notes": [
          "Read BOLT 7 channel_update direction and HTLC Fees formula, including its route example. Recomputed 1,000 msat base + 100 ppm on 100,000 sat = 11 sat; 100 ppm = 0.01%.",
          "Multi-hop fee dependency is distinct from funding/closing transaction costs. Integer rounding and implementation scope are retained."
        ]
      }
    },
    {
      "id": "lightning-routing-fees-fact-base-unit",
      "articleSlug": "lightning-routing-fees",
      "statement": "Base unit: fee_base_msat is denominated in millisatoshis.",
      "sourceIds": [
        "source-d55abd3fe3dfc8b1"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-d55abd3fe3dfc8b1",
          "locator": "The channel_update Message; HTLC Fees; Example; fee_base_msat; fee_proportional_millionths"
        }
      ],
      "scope": {
        "collection": "bitcoin",
        "dataAsOf": "2026-10-02",
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T18:15:23.891Z",
        "reviewer": "Independent automated verification agent verify_bitcoin_stablecoins_100",
        "notes": [
          "Read BOLT 7 channel_update direction and HTLC Fees formula, including its route example. Recomputed 1,000 msat base + 100 ppm on 100,000 sat = 11 sat; 100 ppm = 0.01%.",
          "Multi-hop fee dependency is distinct from funding/closing transaction costs. Integer rounding and implementation scope are retained."
        ]
      }
    },
    {
      "id": "lightning-routing-fees-fact-proportional-unit",
      "articleSlug": "lightning-routing-fees",
      "statement": "Proportional unit: fee_proportional_millionths uses parts per million of the forwarded amount.",
      "sourceIds": [
        "source-d55abd3fe3dfc8b1"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-d55abd3fe3dfc8b1",
          "locator": "The channel_update Message; HTLC Fees; Example; fee_base_msat; fee_proportional_millionths"
        }
      ],
      "scope": {
        "collection": "bitcoin",
        "dataAsOf": "2026-10-02",
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T18:15:23.891Z",
        "reviewer": "Independent automated verification agent verify_bitcoin_stablecoins_100",
        "notes": [
          "Read BOLT 7 channel_update direction and HTLC Fees formula, including its route example. Recomputed 1,000 msat base + 100 ppm on 100,000 sat = 11 sat; 100 ppm = 0.01%.",
          "Multi-hop fee dependency is distinct from funding/closing transaction costs. Integer rounding and implementation scope are retained."
        ]
      }
    },
    {
      "id": "lightning-routing-fees-fact-direction",
      "articleSlug": "lightning-routing-fees",
      "statement": "Direction: Channel update parameters apply to a direction, not one universal fee for both peers.",
      "sourceIds": [
        "source-d55abd3fe3dfc8b1"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-d55abd3fe3dfc8b1",
          "locator": "The channel_update Message; HTLC Fees; Example; fee_base_msat; fee_proportional_millionths"
        }
      ],
      "scope": {
        "collection": "bitcoin",
        "dataAsOf": "2026-10-02",
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T18:15:23.891Z",
        "reviewer": "Independent automated verification agent verify_bitcoin_stablecoins_100",
        "notes": [
          "Read BOLT 7 channel_update direction and HTLC Fees formula, including its route example. Recomputed 1,000 msat base + 100 ppm on 100,000 sat = 11 sat; 100 ppm = 0.01%.",
          "Multi-hop fee dependency is distinct from funding/closing transaction costs. Integer rounding and implementation scope are retained."
        ]
      }
    }
  ],
  "sources": [
    {
      "id": "bolt7",
      "label": "BOLT 7: P2P Node and Channel Discovery",
      "publisher": "Lightning specification contributors",
      "url": "https://raw.githubusercontent.com/lightning/bolts/1aadb719b4007c4cea0ba6e36b08c4fb53788dee/07-routing-gossip.md",
      "locator": "The channel_update Message; HTLC Fees; Example; fee_base_msat; fee_proportional_millionths",
      "note": "Direction-specific advertised routing fees and channel update parameters.",
      "version": null,
      "checkedAt": "2026-10-02T17:22:20.753Z",
      "contentSha256": "b7fb6e94e4efe29ab0011432874c2be1da8104b80f219d23ca5d375baeebe35a",
      "recordId": "source-d55abd3fe3dfc8b1"
    },
    {
      "id": "bolt2",
      "label": "BOLT 2: Peer Protocol for Channel Management",
      "publisher": "Lightning specification contributors",
      "url": "https://raw.githubusercontent.com/lightning/bolts/1aadb719b4007c4cea0ba6e36b08c4fb53788dee/02-peer-protocol.md",
      "locator": "Channel Establishment; Forwarding HTLCs; Channel Close",
      "note": "Channel funding, commitment updates, forwarding and channel closing.",
      "version": null,
      "checkedAt": "2026-10-02T17:22:20.750Z",
      "contentSha256": "1b491b10b6ff92aa558df6aa9b70f4bd432cdded0c0c8087b9342bc57846f0c9",
      "recordId": "source-b9dd1646f089b1a7"
    }
  ],
  "related": {
    "articles": [
      "lightning-inbound-liquidity",
      "bitcoin-fee-rate",
      "lightning-payment-channels"
    ],
    "dossiers": [],
    "wallets": []
  },
  "revisionHistory": [
    {
      "date": "2026-10-02",
      "kind": "published",
      "summary": "Initial Bitcoin encyclopedia entry at this permanent URL."
    },
    {
      "date": "2026-10-02",
      "kind": "publishing-format",
      "summary": "Added reusable claims, explicit source locators, and matching Markdown and JSON. This publishing change does not itself establish factual verification."
    }
  ],
  "citation": "Degrees of Satoshi editorial project. “Lightning routing fees: base fees and proportional fees.” Published 2026-10-02; updated 2026-10-02. https://degreesofsatoshi.com/encyclopedia/lightning-routing-fees/"
}
