{
  "$schema": "https://degreesofsatoshi.com/encyclopedia/schemas/article-v1.json",
  "schemaVersion": "1.0.0",
  "id": "bitcoin-coin-control",
  "canonical": "https://degreesofsatoshi.com/encyclopedia/bitcoin-coin-control/",
  "collection": "bitcoin",
  "title": "Coin control: choosing which bitcoin to spend",
  "description": "Learn what coin-control features let a Bitcoin wallet user choose, and distinguish input selection from a guarantee of transaction privacy.",
  "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": "Coin control lets a wallet user choose or exclude particular Bitcoin UTXOs when constructing a payment. It can help separate receipts and manage fee trade-offs, but it does not erase their history or make the resulting transaction anonymous. The wallet must still fund the recipient outputs and fee.",
    "claimId": "bitcoin-coin-control-quick-answer",
    "sourceIds": [
      "core-lockunspent",
      "core-walletcreatefundedpsbt",
      "bitcoin-dev-wallets"
    ]
  },
  "keyFacts": [
    {
      "label": "Selection",
      "value": "Explicit inputs can be passed to a funding operation.",
      "sourceIds": [
        "core-walletcreatefundedpsbt"
      ],
      "id": "selection",
      "claimId": "bitcoin-coin-control-fact-selection"
    },
    {
      "label": "Exclusion",
      "value": "lockunspent can prevent selected outputs from automatic wallet selection.",
      "sourceIds": [
        "core-lockunspent"
      ],
      "id": "exclusion",
      "claimId": "bitcoin-coin-control-fact-exclusion"
    },
    {
      "label": "Authority",
      "value": "Selection does not replace the signatures required to spend those outputs.",
      "sourceIds": [
        "bitcoin-dev-transactions"
      ],
      "id": "authority",
      "claimId": "bitcoin-coin-control-fact-authority"
    }
  ],
  "prerequisites": [
    "bitcoin-coin-selection"
  ],
  "sections": [
    {
      "id": "select",
      "heading": "Choose receipts rather than just an amount",
      "sourceIds": [
        "core-walletcreatefundedpsbt",
        "bitcoin-dev-transactions"
      ],
      "paragraphs": [
        "Suppose a wallet contains one receipt associated with a public donation and another from a private purchase. Automatic selection may combine them. Coin control can let the user inspect that choice and select a different set.",
        "The transaction still reveals the inputs actually used. Selecting only one UTXO does not hide the sender’s interaction with that UTXO or the payment’s outputs."
      ]
    },
    {
      "id": "lock",
      "heading": "An excluded coin is not frozen by consensus",
      "sourceIds": [
        "core-lockunspent"
      ],
      "paragraphs": [
        "Bitcoin Core’s lockunspent interface changes the wallet’s automatic selection behavior. A wallet-local lock does not write a restriction onto the blockchain or remove another holder’s ability to use the same keys.",
        "The persistence and interface details are wallet-specific. Read the actual wallet’s behavior rather than assuming every “locked” label describes a consensus timelock."
      ]
    },
    {
      "id": "costs",
      "heading": "Check whether the selected coins can fund the payment",
      "sourceIds": [
        "core-walletcreatefundedpsbt",
        "bip141"
      ],
      "paragraphs": [
        "Choosing smaller receipts may require additional inputs and change the estimated fee. Choosing a large receipt may create a change output that needs to be managed later.",
        "Review the funded transaction after selection. A setting that permits automatic additional inputs may alter the set you initially selected."
      ]
    }
  ],
  "faq": [
    {
      "question": "Is coin control the same as a Bitcoin timelock?",
      "answer": "No. Coin control is wallet transaction-construction behavior. A consensus timelock is enforced as part of spending validity and cannot be overridden merely by selecting the coin.",
      "sourceIds": [
        "core-lockunspent",
        "bip65"
      ]
    }
  ],
  "claims": [
    {
      "id": "bitcoin-coin-control-quick-answer",
      "articleSlug": "bitcoin-coin-control",
      "statement": "Coin control lets a wallet user choose or exclude particular Bitcoin UTXOs when constructing a payment. It can help separate receipts and manage fee trade-offs, but it does not erase their history or make the resulting transaction anonymous. The wallet must still fund the recipient outputs and fee.",
      "sourceIds": [
        "source-9f8c993a5e0440ca",
        "source-a8abe4366f2656ba",
        "source-38ff15e10892f1ee"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-9f8c993a5e0440ca",
          "locator": "Arguments and result fields"
        },
        {
          "sourceId": "source-a8abe4366f2656ba",
          "locator": "Arguments and result fields"
        },
        {
          "sourceId": "source-38ff15e10892f1ee",
          "locator": "Wallet Programs; Public Key Distribution-Only Wallets; Hierarchical Deterministic Key Creation"
        }
      ],
      "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": [
          "Checked lockunspent behavior, including automatic selection exclusion, manually selected unlocking, and optional persistence. Wallet-local locking is distinct from consensus timelocks.",
          "Added transaction-structure citation to the public-input visibility section. Input selection is not described as signing authority or anonymity."
        ]
      }
    },
    {
      "id": "bitcoin-coin-control-fact-selection",
      "articleSlug": "bitcoin-coin-control",
      "statement": "Selection: Explicit inputs can be passed to a funding operation.",
      "sourceIds": [
        "source-a8abe4366f2656ba"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-a8abe4366f2656ba",
          "locator": "Arguments and result fields"
        }
      ],
      "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": [
          "Checked lockunspent behavior, including automatic selection exclusion, manually selected unlocking, and optional persistence. Wallet-local locking is distinct from consensus timelocks.",
          "Added transaction-structure citation to the public-input visibility section. Input selection is not described as signing authority or anonymity."
        ]
      }
    },
    {
      "id": "bitcoin-coin-control-fact-exclusion",
      "articleSlug": "bitcoin-coin-control",
      "statement": "Exclusion: lockunspent can prevent selected outputs from automatic wallet selection.",
      "sourceIds": [
        "source-9f8c993a5e0440ca"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-9f8c993a5e0440ca",
          "locator": "Arguments and result fields"
        }
      ],
      "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": [
          "Checked lockunspent behavior, including automatic selection exclusion, manually selected unlocking, and optional persistence. Wallet-local locking is distinct from consensus timelocks.",
          "Added transaction-structure citation to the public-input visibility section. Input selection is not described as signing authority or anonymity."
        ]
      }
    },
    {
      "id": "bitcoin-coin-control-fact-authority",
      "articleSlug": "bitcoin-coin-control",
      "statement": "Authority: Selection does not replace the signatures required to spend those outputs.",
      "sourceIds": [
        "source-b282fdecc069b74d"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-b282fdecc069b74d",
          "locator": "P2PKH Script Validation; Transaction Fees And Change"
        }
      ],
      "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": [
          "Checked lockunspent behavior, including automatic selection exclusion, manually selected unlocking, and optional persistence. Wallet-local locking is distinct from consensus timelocks.",
          "Added transaction-structure citation to the public-input visibility section. Input selection is not described as signing authority or anonymity."
        ]
      }
    }
  ],
  "sources": [
    {
      "id": "core-lockunspent",
      "label": "lockunspent RPC",
      "publisher": "Bitcoin Core",
      "url": "https://bitcoincore.org/en/doc/29.0.0/rpc/wallet/lockunspent/",
      "locator": "Arguments and result fields",
      "note": "Preventing specified wallet outputs from automatic coin selection.",
      "version": "Bitcoin Core 29.0.0 RPC",
      "checkedAt": "2026-10-02T17:03:41.086Z",
      "contentSha256": "f8b3a01fa0af658e8f7d3e4d0b6b78ab86d58ed37d8751a0c448b46968c8969b",
      "recordId": "source-9f8c993a5e0440ca"
    },
    {
      "id": "core-walletcreatefundedpsbt",
      "label": "walletcreatefundedpsbt RPC",
      "publisher": "Bitcoin Core",
      "url": "https://bitcoincore.org/en/doc/29.0.0/rpc/wallet/walletcreatefundedpsbt/",
      "locator": "Arguments and result fields",
      "note": "Input selection, fee units, change output, selected inputs and transaction funding.",
      "version": "Bitcoin Core 29.0.0 RPC",
      "checkedAt": "2026-10-02T17:03:40.827Z",
      "contentSha256": "d30514044f4ab73bb52b4f8d9bb2d5b8a64482c26fd1b63be11defcb0f2ac6d6",
      "recordId": "source-a8abe4366f2656ba"
    },
    {
      "id": "bitcoin-dev-wallets",
      "label": "Bitcoin Developer Guide: Wallets",
      "publisher": "Bitcoin developer documentation contributors",
      "url": "https://developer.bitcoin.org/devguide/wallets.html",
      "locator": "Wallet Programs; Public Key Distribution-Only Wallets; Hierarchical Deterministic Key Creation",
      "note": "Spending keys, address derivation, backups and privacy trade-offs.",
      "version": null,
      "checkedAt": "2026-10-02T17:03:41.163Z",
      "contentSha256": "e136c099f4abfa15673e3ead4f06e61536de38a71b88ef4a8965706c718d5893",
      "recordId": "source-38ff15e10892f1ee"
    },
    {
      "id": "bitcoin-dev-transactions",
      "label": "Bitcoin Developer Guide: Transactions",
      "publisher": "Bitcoin developer documentation contributors",
      "url": "https://developer.bitcoin.org/devguide/transactions.html",
      "locator": "P2PKH Script Validation; Transaction Fees And Change",
      "note": "UTXO inputs, transaction outputs, change and the difference paid as a fee.",
      "version": null,
      "checkedAt": "2026-10-02T17:03:41.190Z",
      "contentSha256": "449ae88ea59f9b198c398d3f5f56f83a92cd6be1638fa6681a1fdeea164892c0",
      "recordId": "source-b282fdecc069b74d"
    },
    {
      "id": "bip141",
      "label": "Segregated Witness consensus layer",
      "publisher": "Bitcoin BIPs contributors",
      "url": "https://raw.githubusercontent.com/bitcoin/bips/927b6de9915c9262615a6399de51b200f81e5aa4/bip-0141.mediawiki",
      "locator": "Block size; Transaction size",
      "note": "Transaction weight and virtual-size definitions in the SegWit specification.",
      "version": "BIP-141; immutable revision pinned in source URL",
      "checkedAt": "2026-10-02T17:22:20.465Z",
      "contentSha256": "d72409335872a32494f75e7547589abf4b3b23b6beebe6bc6999c7a84b135e2c",
      "recordId": "source-896e868816ad19d1"
    },
    {
      "id": "bip65",
      "label": "OP_CHECKLOCKTIMEVERIFY",
      "publisher": "Bitcoin BIPs contributors",
      "url": "https://raw.githubusercontent.com/bitcoin/bips/927b6de9915c9262615a6399de51b200f81e5aa4/bip-0065.mediawiki",
      "locator": "Summary; Specification",
      "note": "Absolute locktime constraints for spending transaction outputs.",
      "version": "BIP-65; immutable revision pinned in source URL",
      "checkedAt": "2026-10-02T17:22:20.600Z",
      "contentSha256": "717400aef7789a795bbc86a67e0f40ea94966aea13975052e1fc31a047207399",
      "recordId": "source-4c5f236c04800844"
    }
  ],
  "related": {
    "articles": [
      "bitcoin-coin-selection",
      "bitcoin-address-reuse",
      "bitcoin-timelocks",
      "bitcoin-dust"
    ],
    "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. “Coin control: choosing which bitcoin to spend.” Published 2026-10-02; updated 2026-10-02. https://degreesofsatoshi.com/encyclopedia/bitcoin-coin-control/"
}
