{
  "$schema": "https://degreesofsatoshi.com/encyclopedia/schemas/article-v1.json",
  "schemaVersion": "1.0.0",
  "id": "ethereum-dapp-connection-errors",
  "canonical": "https://degreesofsatoshi.com/encyclopedia/ethereum-dapp-connection-errors/",
  "collection": "ethereum",
  "title": "Why won’t an Ethereum app connect to my wallet?",
  "description": "Separate a rejected wallet request, missing account permission and unavailable chain from an actual Ethereum transaction failure.",
  "aliases": [
    "wallet connection error 4001",
    "Ethereum wallet disconnected error"
  ],
  "dates": {
    "published": "2026-10-02",
    "modified": "2026-10-02",
    "verified": "2026-10-02T19:27:58.939Z",
    "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": "A dapp connection failure may mean the user rejected a request, the app lacks account permission, the requested method is unsupported or the provider cannot serve the chain. These are distinct from an onchain transaction reverting. Check the selected wallet, requested account and network, then inspect the precise error before changing settings or resubmitting transactions.",
    "claimId": "ethereum-dapp-connection-errors-quick-answer",
    "sourceIds": [
      "x425-eth-eip1193",
      "x425-eth-eth-jsonrpc"
    ]
  },
  "keyFacts": [
    {
      "label": "4001",
      "value": "EIP-1193 defines this error for a user-rejected request.",
      "sourceIds": [
        "x425-eth-eip1193"
      ],
      "id": "4001",
      "claimId": "ethereum-dapp-connection-errors-fact-4001"
    },
    {
      "label": "4100",
      "value": "This error indicates the requested method or account is unauthorized.",
      "sourceIds": [
        "x425-eth-eip1193"
      ],
      "id": "4100",
      "claimId": "ethereum-dapp-connection-errors-fact-4100"
    },
    {
      "label": "4901",
      "value": "The provider is disconnected from the requested chain while connected to another.",
      "sourceIds": [
        "x425-eth-eip1193"
      ],
      "id": "4901",
      "claimId": "ethereum-dapp-connection-errors-fact-4901"
    }
  ],
  "prerequisites": [
    "ethereum-wallet-requests"
  ],
  "sections": [
    {
      "id": "connection",
      "heading": "Connectivity does not equal account permission",
      "sourceIds": [
        "x425-eth-eip1193"
      ],
      "paragraphs": [
        "EIP-1193 uses connected to mean the provider can service RPC requests to a chain. An application can still lack permission to use an account. Conversely, a remembered account selection does not guarantee that the current endpoint can reach the requested chain.",
        "Look for an account-authorization prompt and check the application’s requested network. Do not interpret every connection failure as a damaged wallet."
      ]
    },
    {
      "id": "example",
      "heading": "A wrong-chain request has a narrower fix",
      "sourceIds": [
        "x425-eth-eip1193"
      ],
      "paragraphs": [
        "Suppose a wallet can serve Ethereum mainnet but the app requests an unavailable chain. Error 4901 identifies that chain-specific problem. Re-entering a recovery phrase would not make the endpoint support that chain.",
        "A rejected prompt is different: error 4001 can mean you pressed Reject. Retrying is appropriate only if you now understand and intend the request."
      ]
    },
    {
      "id": "transaction",
      "heading": "Determine whether anything reached the chain",
      "sourceIds": [
        "x425-eth-eth-jsonrpc",
        "x425-eth-eip1193"
      ],
      "paragraphs": [
        "A provider error alone is not proof of a failed included transaction. If a transaction was submitted, follow its hash on the correct network and inspect the receipt before sending a replacement payment.",
        "Applications should react to account and chain changes rather than retain a stale selection. For users, refreshing or reconnecting through the documented interface can resolve stale state without deleting recovery material."
      ]
    }
  ],
  "faq": [
    {
      "question": "Does every connection error cost gas?",
      "answer": "No. A rejected or unavailable provider request can occur before any transaction is submitted. A gas charge concerns executed onchain work.",
      "sourceIds": [
        "x425-eth-eip1193",
        "x425-eth-eth-gas"
      ]
    },
    {
      "question": "Should support need my recovery phrase to fix a connection?",
      "answer": "No. Public account, network and error details are sufficient for ordinary connection diagnosis. Sharing recovery secrets creates a separate account-control risk.",
      "sourceIds": [
        "x425-eth-eth-security",
        "x425-eth-eip1193"
      ]
    }
  ],
  "claims": [
    {
      "id": "ethereum-dapp-connection-errors-quick-answer",
      "articleSlug": "ethereum-dapp-connection-errors",
      "statement": "A dapp connection failure may mean the user rejected a request, the app lacks account permission, the requested method is unsupported or the provider cannot serve the chain. These are distinct from an onchain transaction reverting. Check the selected wallet, requested account and network, then inspect the precise error before changing settings or resubmitting transactions.",
      "sourceIds": [
        "source-b0746cbddfc23325",
        "source-a5154b4118a3d15f"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-b0746cbddfc23325",
          "locator": "Provider errors; connectivity; request"
        },
        {
          "sourceId": "source-a5154b4118a3d15f",
          "locator": "eth_getBalance; eth_getTransactionReceipt; block parameter; logs"
        }
      ],
      "scope": {
        "collection": "ethereum",
        "dataAsOf": "2026-10-02",
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T19:27:58.939Z",
        "reviewer": "Independent automated verification agent verify_bitcoin_stablecoins_100",
        "notes": [
          "EIP1193 defines4001 rejection,4100 unauthorized and4901 unavailable requested chain while another is connected. Receipt API confirms included execution must be checked separately. No unnecessary seed/reinstall advice or gas charge implied for every provider error."
        ]
      }
    },
    {
      "id": "ethereum-dapp-connection-errors-fact-4001",
      "articleSlug": "ethereum-dapp-connection-errors",
      "statement": "4001: EIP-1193 defines this error for a user-rejected request.",
      "sourceIds": [
        "source-b0746cbddfc23325"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-b0746cbddfc23325",
          "locator": "Provider errors; connectivity; request"
        }
      ],
      "scope": {
        "collection": "ethereum",
        "dataAsOf": "2026-10-02",
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T19:27:58.939Z",
        "reviewer": "Independent automated verification agent verify_bitcoin_stablecoins_100",
        "notes": [
          "EIP1193 defines4001 rejection,4100 unauthorized and4901 unavailable requested chain while another is connected. Receipt API confirms included execution must be checked separately. No unnecessary seed/reinstall advice or gas charge implied for every provider error."
        ]
      }
    },
    {
      "id": "ethereum-dapp-connection-errors-fact-4100",
      "articleSlug": "ethereum-dapp-connection-errors",
      "statement": "4100: This error indicates the requested method or account is unauthorized.",
      "sourceIds": [
        "source-b0746cbddfc23325"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-b0746cbddfc23325",
          "locator": "Provider errors; connectivity; request"
        }
      ],
      "scope": {
        "collection": "ethereum",
        "dataAsOf": "2026-10-02",
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T19:27:58.939Z",
        "reviewer": "Independent automated verification agent verify_bitcoin_stablecoins_100",
        "notes": [
          "EIP1193 defines4001 rejection,4100 unauthorized and4901 unavailable requested chain while another is connected. Receipt API confirms included execution must be checked separately. No unnecessary seed/reinstall advice or gas charge implied for every provider error."
        ]
      }
    },
    {
      "id": "ethereum-dapp-connection-errors-fact-4901",
      "articleSlug": "ethereum-dapp-connection-errors",
      "statement": "4901: The provider is disconnected from the requested chain while connected to another.",
      "sourceIds": [
        "source-b0746cbddfc23325"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-b0746cbddfc23325",
          "locator": "Provider errors; connectivity; request"
        }
      ],
      "scope": {
        "collection": "ethereum",
        "dataAsOf": "2026-10-02",
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T19:27:58.939Z",
        "reviewer": "Independent automated verification agent verify_bitcoin_stablecoins_100",
        "notes": [
          "EIP1193 defines4001 rejection,4100 unauthorized and4901 unavailable requested chain while another is connected. Receipt API confirms included execution must be checked separately. No unnecessary seed/reinstall advice or gas charge implied for every provider error."
        ]
      }
    }
  ],
  "sources": [
    {
      "id": "x425-eth-eip1193",
      "label": "Ethereum Provider JavaScript API",
      "publisher": "Ethereum Improvement Proposals",
      "url": "https://eips.ethereum.org/EIPS/eip-1193",
      "locator": "Provider errors; connectivity; request",
      "note": "Wallet connection and authorization error categories do not prove an onchain transaction occurred.",
      "version": "EIP-1193",
      "checkedAt": "2026-10-02T18:55:24.986Z",
      "contentSha256": "7a29e3f43c262ad3f663b8f419257132c127e1580c91cbe837d59f86a5bd7ab4",
      "recordId": "source-b0746cbddfc23325"
    },
    {
      "id": "x425-eth-eth-jsonrpc",
      "label": "Ethereum JSON-RPC API",
      "publisher": "ethereum.org contributors",
      "url": "https://ethereum.org/en/developers/docs/apis/json-rpc/",
      "locator": "eth_getBalance; eth_getTransactionReceipt; block parameter; logs",
      "note": "RPC requests explicitly identify addresses and block scope; receipts and removed log fields support verification examples.",
      "version": "Documentation snapshot retrieved 2 October 2026; response hash recorded separately",
      "checkedAt": "2026-10-02T18:55:24.990Z",
      "contentSha256": "ed13997ec4f415dff80883add0730d4e64bcc8c17b95dd4f6c27aed0241a4073",
      "recordId": "source-a5154b4118a3d15f"
    },
    {
      "id": "x425-eth-eth-gas",
      "label": "Ethereum gas and fees",
      "publisher": "ethereum.org contributors",
      "url": "https://ethereum.org/en/developers/docs/gas/",
      "locator": "Gas limit; fee calculation; base fee; priority fee",
      "note": "Gas budgeting, actual use, burnt base fee and proposer priority fees.",
      "version": "Documentation snapshot retrieved 2 October 2026; response hash recorded separately",
      "checkedAt": "2026-10-02T18:55:24.873Z",
      "contentSha256": "566e61b7dce594a477ef28bab1f5a23279feb4f782e2838623fc7491c9daec66",
      "recordId": "source-5cadd0da692ffaa8"
    },
    {
      "id": "x425-eth-eth-security",
      "label": "Ethereum security and scam prevention",
      "publisher": "ethereum.org contributors",
      "url": "https://ethereum.org/en/security/",
      "locator": "Wallet security; common scams; hardware wallets",
      "note": "Primary community guidance on wallet secrets, phishing, malicious sites and transaction checking.",
      "version": "Documentation snapshot retrieved 2 October 2026; response hash recorded separately",
      "checkedAt": "2026-10-02T18:55:24.140Z",
      "contentSha256": "1372ff086ae3f53ded99c8dfe308346a457574d41c04dc587de119a64080b448",
      "recordId": "source-83ec2d5a18d94ce1"
    }
  ],
  "related": {
    "articles": [
      "ethereum-nodes-rpc",
      "ethereum-chain-id",
      "ethereum-transaction-receipts",
      "ethereum-send-max-balance",
      "sign-in-with-ethereum"
    ],
    "dossiers": [],
    "wallets": []
  },
  "revisionHistory": [
    {
      "date": "2026-10-02",
      "kind": "published",
      "summary": "First publication after primary-source research and separate automated verification."
    }
  ],
  "citation": "Degrees of Satoshi editorial project. “Why won’t an Ethereum app connect to my wallet?.” Published 2026-10-02; updated 2026-10-02. https://degreesofsatoshi.com/encyclopedia/ethereum-dapp-connection-errors/"
}
