We’re building a dapp that aims to support gasless transactions for MetaMask users while keeping them on EOAs, using EIP-7702 rather than a full EIP-4337 smart account migration.
Integration is at the transaction-sending layer (UserOperations / sponsored execution), not deploying custom smart accounts per user.
Describe problem / question
We’re unable to support gas sponsorship for MetaMask EOAs via EIP-7702.
Specifically:
MetaMask only allows delegation to its default 7702 implementation
That implementation does not expose paymaster / sponsorship support
Dapps cannot initiate the 7702 upgrade (signAuthorization)
sendUserOperation requires a signed authorization, but JSON-RPC accounts cannot produce signAuthorization
After manually upgrading an EOA via MetaMask, transactions still require the user to pay gas, so a fully gasless flow is not achievable.
Question:
Given these constraints, how are dapps expected to support gasless transactions for MetaMask EOA users via EIP-7702 today?
Is gas sponsorship intentionally unsupported, or is the expectation to use EIP-4337 smart accounts or MetaMask-specific infrastructure?
Exact error and logs
Main blocker is missing capability:
signAuthorization not available from JSON-RPC context
Thanks — this is a clear integration question about supporting gasless flows for MetaMask EOAs via EIP-7702. I’ve summarized the situation for the support team and given guidance below.
Extracted details for support
SDK Details: MetaMask Smart Accounts SDK (Gator)
SDK Version Number: (not provided)
Platform: (not provided)
If you want escalation, please add SDK version and platform (web / desktop / mobile) — otherwise I’ll proceed with the assessment below.
What you reported (short)
You want gasless UX for users who remain on EOAs using EIP-7702 (no full EIP-4337 migration).
Blockers: MetaMask only delegates to its default EIP-7702 impl (no paymaster hooks), dapps cannot call signAuthorization from JSON-RPC, and sendUserOperation requires a signed authorization that JSON-RPC accounts can’t produce.
After manual MetaMask 7702 upgrade, transactions still require the user to pay gas.
Answer / Recommended path
Current state: true gas sponsorship (paymaster-based sponsorship) for MetaMask EOAs via EIP-7702 is not supported today. The default MetaMask EIP-7702 implementation does not expose paymaster/sponsorship hooks, and JSON-RPC accounts cannot produce signAuthorization for programmatic upgrades or signed authorizations required by sendUserOperation. This matches your findings.
Recommended approaches today:
Migrate to EIP-4337 programmable smart accounts (MetaMask Smart Accounts Kit) and integrate a Paymaster. This is the canonical MetaMask-supported way to enable true gasless/sponsored UserOperation flows. Docs: https://docs.metamask.io/smart-accounts-kit/overview/
If you can’t migrate users to smart accounts, implement an application-level relayer/meta-transaction pattern: have the user sign an EIP-712 approval/message off-chain, then your relayer submits a transaction and pays gas. Note: this requires contract-side support (i.e., your contract must accept and verify those meta-signatures) and is not the same as native paymaster sponsorship via account abstraction.
TL;DR: Gas sponsorship for MetaMask EOAs via EIP-7702 is intentionally unsupported in the current MetaMask implementation. The expectation from MetaMask to get full paymaster sponsorship is to use EIP-4337 smart accounts (Smart Accounts Kit) or third-party infrastructure — not EIP-7702 EOA upgrades.
Next steps I can help with
If you want help migrating a flow to Smart Accounts Kit (high-level steps, example code paths, Paymaster integration), tell me your preferred network and I’ll provide an outline and code snippets.
If you want me to escalate this as a feature request to the MetaMask team, I can draft the request — confirm SDK version + platform and any additional context (expected UX, security model).
If you’d like to explore a relayer/meta-tx implementation, tell me whether you control the target contracts and I’ll sketch the verification/signing flow.
If you want to proceed with any of the above, share SDK version and platform and I’ll tailor the next steps.
Note: This response was generated by an AI bot and may require further verification. The MetaMask Community Team has tracked this issue and will be responding as soon as possible.
Additionally, we would recommend you to join our biweekly Office Hours to get this resolved even faster. MetaMask Developer Office Hours