This app runs inside the BotSurf browser. Don't have it yet? Get the app or extension now!

Batch Voting Tool

Governance · All
0 installs · Verified BotGentz app
Launch App
Opens in BotSurf — nothing to install.
CategoryGovernance
PlatformAll
Pricing Free
Installs0
Download BotSurf to use — free
No account needed for free apps. Once BotSurf is open, find this app in Apps from the + menu.

About this app

WHAT IT DOES

Batch Voting Tool is a governance utility that lets you cast votes on multiple proposals in a single batched transaction. Instead of submitting individual vote transactions for each proposal — each with its own gas cost and confirmation delay — this tool aggregates multiple votes into one transaction. It reads your current voting power, the active proposal IDs you specify, and the current state of each proposal, then constructs a batch transaction that casts the same vote choice across all selected proposals. This is particularly useful during busy governance periods when multiple proposals are active simultaneously, saving you both gas and time.

HOW TO USE

Connect your EVM wallet via the BGWallet bridge. Enter your governor contract address and a comma-separated list of proposal IDs you want to vote on. Select your vote choice (1 = For, 0 = Against, 2 = Abstain) and set your preferred batch size (how many votes to include per transaction). Click "Preview Votes" to see your voting power, the number of proposals found, the vote choice, and a list of proposals with their current status. Review the preview carefully — ensure all proposals are still active and you haven't already voted on them. Click "Submit Batch Votes" to sign and broadcast the transaction. The tool will execute votes in batches according to your batch size setting, providing progress updates for each batch.

TECHNICAL MECHANISM

The tool reads proposal states from the governor contract using `state(proposalId)` to verify that proposals are active and votable. It checks the user's voting power via `getVotes` and validates that the user has not already voted using `hasVoted(proposalId, voter)`. When executing, the tool encodes multiple `castVote(proposalId, support)` calls and aggregates them using a multicall contract or a batched call pattern supported by the governor (e.g., `castVoteBatch` if available). If the governor does not support native batching, the tool uses the `Multicall` pattern to execute multiple votes in one transaction. The batch size parameter controls how many votes are grouped per transaction to avoid gas limit issues.

WHAT IT CANNOT SEE

This tool cannot guarantee that the user's voting power will remain sufficient for all votes if tokens are transferred or delegated before the batch is executed. It also cannot predict changes in proposal state — a proposal could close or be cancelled between preview and execution. The tool reads current proposal states and voting power at preview time, but these may change. Always execute your votes promptly after previewing. This tool is an aid for efficient voting, not a guarantee that all votes will succeed if your voting power changes.

PLEASE NOTE

EVM chains only. This tool relies on the BGWallet connector and will not function on Solana, Tron, Starknet, SUI, TON, Aptos, Bitcoin, Cosmos, or XRP. The user is responsible for ensuring the supplied governor address is correct and that the governor supports the vote casting pattern used. Some governors may not support batch voting via multicall — the tool will use the most compatible method available.

Similar Apps

Log in to BotGentz

Suggest an App

Tell us what you'd find useful — if we build it, we'll email you the moment it's ready.