{
  "$schema": "https://degreesofsatoshi.com/encyclopedia/schemas/article-v1.json",
  "schemaVersion": "1.0.0",
  "id": "ethereum-nodes-rpc",
  "canonical": "https://degreesofsatoshi.com/encyclopedia/ethereum-nodes-rpc/",
  "collection": "ethereum",
  "title": "Ethereum nodes and RPC: how wallets see the chain",
  "description": "Understand execution and consensus clients, what an RPC provider tells a wallet, and why running a verifying node differs from staking.",
  "aliases": [
    "Ethereum node",
    "RPC endpoint",
    "execution client",
    "consensus client"
  ],
  "dates": {
    "published": "2026-10-02",
    "modified": "2026-10-02",
    "verified": "2026-10-02T15:10:23.134Z",
    "dataAsOf": null
  },
  "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": "An Ethereum node runs software that follows and verifies the network. Execution and consensus clients work together; a validator is an additional role. Wallets often query a node through RPC to read balances, simulate calls and submit signed transactions, so the endpoint affects their view of the chain.",
    "claimId": "ethereum-nodes-rpc-quick-answer",
    "sourceIds": [
      "nodes",
      "rpc"
    ]
  },
  "keyFacts": [
    {
      "label": "Client roles",
      "value": "Execution clients process execution; consensus clients follow proof-of-stake consensus",
      "sourceIds": [
        "nodes"
      ],
      "id": "client-roles",
      "claimId": "ethereum-nodes-rpc-fact-client-roles"
    },
    {
      "label": "Staking distinction",
      "value": "Running a verifying node does not itself require activating a validator",
      "sourceIds": [
        "nodes",
        "staking"
      ],
      "id": "staking-distinction",
      "claimId": "ethereum-nodes-rpc-fact-staking-distinction"
    },
    {
      "label": "Query scope",
      "value": "RPC state queries can specify a block, rather than an unspecified latest state",
      "sourceIds": [
        "rpc"
      ],
      "id": "query-scope",
      "claimId": "ethereum-nodes-rpc-fact-query-scope"
    }
  ],
  "prerequisites": [
    "what-is-ethereum",
    "ethereum-accounts"
  ],
  "sections": [
    {
      "id": "two-client-roles",
      "heading": "Execution and consensus answer different questions",
      "sourceIds": [
        "nodes",
        "pos"
      ],
      "paragraphs": [
        "The execution client checks transactions, executes EVM operations and maintains execution state such as account balances and contract storage. The consensus client follows proof-of-stake blocks, votes and the rules that determine the chain head and finality.",
        "Together they let a node verify the chain it follows. Validator software adds proposal and voting duties using an activated validator’s keys. Simply reading and verifying Ethereum does not require depositing the stake needed to activate a validator."
      ]
    },
    {
      "id": "rpc-interface",
      "heading": "RPC is a request-and-response interface",
      "sourceIds": [
        "rpc",
        "nodes"
      ],
      "paragraphs": [
        "JSON-RPC defines methods a wallet or application can call. For example, eth_chainId identifies the network, eth_getBalance reads an account’s ETH balance, eth_call executes a read or simulation against selected state, and eth_sendRawTransaction submits a signed transaction.",
        "A hosted endpoint is a service operated by someone else. The wallet can hold signing keys separately while requesting data from that service. Using RPC is therefore not the same thing as giving the endpoint custody of a private key, although the endpoint influences the data the application receives."
      ]
    },
    {
      "id": "worked-example",
      "heading": "Example: asking the same balance question twice",
      "sourceIds": [
        "rpc"
      ],
      "paragraphs": [
        "Suppose an application asks for an account’s balance at block 1,000 and gets 2 ETH. A later transaction changes the balance. A request for latest can now produce a different answer because it refers to a different state; this does not mean the earlier response was necessarily wrong.",
        "For reproducible comparisons, record the network and block context and use an appropriate block identifier. Recent blocks can reorganize, so finality also matters. A block number without its network, and sometimes without a block hash, is an incomplete description of the evidence."
      ]
    },
    {
      "id": "trust-and-retention",
      "heading": "Verification, data access and privacy are separate concerns",
      "sourceIds": [
        "nodes",
        "rpc"
      ],
      "paragraphs": [
        "A self-operated node gives you direct control over verification and the RPC service you use. That does not mean every node retains every historical state. Pruning, synchronization choices and archive capabilities affect which old queries it can answer.",
        "A remote provider receives the queries you send, including requested addresses and network access information available to that service. Endpoint errors, limits or stale responses can affect an application without changing the underlying blockchain. Treat the RPC response and the consensus evidence behind it as related but distinct things."
      ]
    }
  ],
  "faq": [
    {
      "question": "Must I stake 32 ETH to run a node?",
      "answer": "No. A node can verify and serve chain data without an activated validator. Validator activation is a separate consensus role with its own stake requirements.",
      "sourceIds": [
        "nodes",
        "staking"
      ]
    },
    {
      "question": "Is RPC a blockchain?",
      "answer": "No. It is an interface for requesting information or submitting operations to software connected to a blockchain.",
      "sourceIds": [
        "rpc",
        "nodes"
      ]
    },
    {
      "question": "Can every full node answer any historical balance query?",
      "answer": "No. Data retention and archive capabilities vary. Verifying the current chain and retaining every historical state are different requirements.",
      "sourceIds": [
        "nodes"
      ]
    }
  ],
  "claims": [
    {
      "id": "ethereum-nodes-rpc-quick-answer",
      "articleSlug": "ethereum-nodes-rpc",
      "statement": "An Ethereum node runs software that follows and verifies the network. Execution and consensus clients work together; a validator is an additional role. Wallets often query a node through RPC to read balances, simulate calls and submit signed transactions, so the endpoint affects their view of the chain.",
      "sourceIds": [
        "source-60a91d91cd9a2e6e",
        "source-a7715dc3ab892daa"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-60a91d91cd9a2e6e",
          "locator": "What are nodes and clients; benefits to you; alternatives"
        },
        {
          "sourceId": "source-a7715dc3ab892daa",
          "locator": "eth_chainId; eth_getBalance; eth_getTransactionCount; eth_call; eth_getTransactionReceipt"
        }
      ],
      "scope": {
        "collection": "ethereum",
        "dataAsOf": null,
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T15:10:23.134Z",
        "reviewer": "automated independent verification",
        "notes": [
          "Checked execution/consensus roles, nonstaking nodes, JSONRPC methods, historical state retention and blockscope. No claim every fullnode archives state."
        ]
      }
    },
    {
      "id": "ethereum-nodes-rpc-fact-client-roles",
      "articleSlug": "ethereum-nodes-rpc",
      "statement": "Client roles: Execution clients process execution; consensus clients follow proof-of-stake consensus",
      "sourceIds": [
        "source-60a91d91cd9a2e6e"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-60a91d91cd9a2e6e",
          "locator": "What are nodes and clients; benefits to you; alternatives"
        }
      ],
      "scope": {
        "collection": "ethereum",
        "dataAsOf": null,
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T15:10:23.134Z",
        "reviewer": "automated independent verification",
        "notes": [
          "Checked execution/consensus roles, nonstaking nodes, JSONRPC methods, historical state retention and blockscope. No claim every fullnode archives state."
        ]
      }
    },
    {
      "id": "ethereum-nodes-rpc-fact-staking-distinction",
      "articleSlug": "ethereum-nodes-rpc",
      "statement": "Staking distinction: Running a verifying node does not itself require activating a validator",
      "sourceIds": [
        "source-60a91d91cd9a2e6e",
        "source-f2b60fa719e0c0c7"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-60a91d91cd9a2e6e",
          "locator": "What are nodes and clients; benefits to you; alternatives"
        },
        {
          "sourceId": "source-f2b60fa719e0c0c7",
          "locator": "How it works; responsibilities; considerations"
        }
      ],
      "scope": {
        "collection": "ethereum",
        "dataAsOf": null,
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T15:10:23.134Z",
        "reviewer": "automated independent verification",
        "notes": [
          "Checked execution/consensus roles, nonstaking nodes, JSONRPC methods, historical state retention and blockscope. No claim every fullnode archives state."
        ]
      }
    },
    {
      "id": "ethereum-nodes-rpc-fact-query-scope",
      "articleSlug": "ethereum-nodes-rpc",
      "statement": "Query scope: RPC state queries can specify a block, rather than an unspecified latest state",
      "sourceIds": [
        "source-a7715dc3ab892daa"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-a7715dc3ab892daa",
          "locator": "eth_chainId; eth_getBalance; eth_getTransactionCount; eth_call; eth_getTransactionReceipt"
        }
      ],
      "scope": {
        "collection": "ethereum",
        "dataAsOf": null,
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T15:10:23.134Z",
        "reviewer": "automated independent verification",
        "notes": [
          "Checked execution/consensus roles, nonstaking nodes, JSONRPC methods, historical state retention and blockscope. No claim every fullnode archives state."
        ]
      }
    }
  ],
  "sources": [
    {
      "id": "nodes",
      "label": "Nodes and clients",
      "publisher": "ethereum.org contributors",
      "url": "https://raw.githubusercontent.com/ethereum/ethereum-org-website/dcc900ff125891da5b6c723b905a7113cf1bd864/public/content/developers/docs/nodes-and-clients/index.md",
      "canonicalUrl": "https://ethereum.org/en/developers/docs/nodes-and-clients/",
      "version": "dcc900ff125891da5b6c723b905a7113cf1bd864",
      "checkedAt": "2026-10-02T14:35:47.541421+00:00",
      "locator": "What are nodes and clients; benefits to you; alternatives",
      "sha256": "cb031af5a627217c4fbcd4a524e3a4c695feb7f8b1ffec6991c4d6d04475c8a6",
      "note": "Supports execution/consensus client roles, independent validation, RPC services and node-versus-validator distinctions.",
      "recordId": "source-60a91d91cd9a2e6e",
      "contentSha256": "cb031af5a627217c4fbcd4a524e3a4c695feb7f8b1ffec6991c4d6d04475c8a6"
    },
    {
      "id": "rpc",
      "label": "JSON-RPC API",
      "publisher": "ethereum.org contributors",
      "url": "https://raw.githubusercontent.com/ethereum/ethereum-org-website/dcc900ff125891da5b6c723b905a7113cf1bd864/public/content/developers/docs/apis/json-rpc/index.md",
      "canonicalUrl": "https://ethereum.org/en/developers/docs/apis/json-rpc/",
      "version": "dcc900ff125891da5b6c723b905a7113cf1bd864",
      "checkedAt": "2026-10-02T14:35:47.605538+00:00",
      "locator": "eth_chainId; eth_getBalance; eth_getTransactionCount; eth_call; eth_getTransactionReceipt",
      "sha256": "849abb0a4240a2f8ee9c249ceecfd120a908b08aaa0f5f7fc63055e704fc6cbd",
      "note": "Defines chain identity, balance/nonces, read-only simulation and receipt/status/log fields.",
      "recordId": "source-a7715dc3ab892daa",
      "contentSha256": "849abb0a4240a2f8ee9c249ceecfd120a908b08aaa0f5f7fc63055e704fc6cbd"
    },
    {
      "id": "staking",
      "label": "Solo staking",
      "publisher": "ethereum.org contributors",
      "url": "https://raw.githubusercontent.com/ethereum/ethereum-org-website/dcc900ff125891da5b6c723b905a7113cf1bd864/public/content/staking/solo/index.md",
      "canonicalUrl": "https://ethereum.org/en/staking/solo/",
      "version": "dcc900ff125891da5b6c723b905a7113cf1bd864",
      "checkedAt": "2026-10-02T14:35:43.704988+00:00",
      "locator": "How it works; responsibilities; considerations",
      "sha256": "b146ce657d32d3d025d9570df05679bd3f238f04d68ffe76d953fa4585b14380",
      "note": "Supports running execution/consensus/validator software and the operational nature of staking.",
      "recordId": "source-f2b60fa719e0c0c7",
      "contentSha256": "b146ce657d32d3d025d9570df05679bd3f238f04d68ffe76d953fa4585b14380"
    },
    {
      "id": "pos",
      "label": "Proof of stake",
      "publisher": "ethereum.org contributors",
      "url": "https://raw.githubusercontent.com/ethereum/ethereum-org-website/dcc900ff125891da5b6c723b905a7113cf1bd864/public/content/developers/docs/consensus-mechanisms/pos/index.md",
      "canonicalUrl": "https://ethereum.org/en/developers/docs/consensus-mechanisms/pos/",
      "version": "dcc900ff125891da5b6c723b905a7113cf1bd864",
      "checkedAt": "2026-10-02T14:35:43.818781+00:00",
      "locator": "Validators; transaction execution; finality; fork choice",
      "sha256": "54450f20b10562f7b1094f3ba79aee51512206e45aeccabb636e1c533a70f9cd",
      "note": "Supports 12-second slots, 32-slot epochs, stake-weighted checkpoint voting and block verification.",
      "recordId": "source-0fc300dcdcf420c6",
      "contentSha256": "54450f20b10562f7b1094f3ba79aee51512206e45aeccabb636e1c533a70f9cd"
    }
  ],
  "related": {
    "articles": [
      "ethereum-proof-of-stake-finality",
      "ethereum-wallet-requests",
      "ethereum-block-explorer"
    ],
    "dossiers": [],
    "wallets": []
  },
  "revisionHistory": [
    {
      "date": "2026-10-02",
      "kind": "published",
      "summary": "First publication after primary-source research and independent automated verification."
    }
  ],
  "citation": "Degrees of Satoshi editorial project. “Ethereum nodes and RPC: how wallets see the chain.” Published 2026-10-02; updated 2026-10-02. https://degreesofsatoshi.com/encyclopedia/ethereum-nodes-rpc/"
}
