# Execute Proposals

Besides creating and voting on proposals, users can also: queue, execute, and cancel.

Queuing, executing, and canceling proposals can all be accomplished directly from the [Broken link](https://docs.tally.xyz/how-to-use-tally/broken-reference "mention").

## Queuing and Executing Proposals

{% hint style="warning" %}
*Once voting ends, a proposal is not complete. If a proposal passes, additional steps are required before execution. A successful Governor proposal still needs to be **queued**—if the* organization *uses a Timelock—and then **executed**.*
{% endhint %}

Once a proposal passes, you can queue and execute it from the same place you voted:

![](https://p434.p1.n0.cdn.getcloudapp.com/items/llugw09k/b6741915-c668-406e-83f1-0de5a6ad0d9c.jpg?v=706969e0024d71df04d581d9add0096e)

### *What does it mean to “queue” a proposal?*

**Queue** prepares a proposal for execution. The queue action sends the proposal to the Timelock contract, which starts the countdown until the proposal can be executed.

Someone needs to call the  `queue()` function because the EVM (Ethereum Virtual Machine) does not support scheduled or automatic calls. Every call must be kicked off by a user.

If a Governor does not have a Timelock, then proposals don’t need to be queued. They can be executed as soon as the proposal passes.

### *Who can queue a proposal?*

Generally, anyone can queue a proposal that has passed! The only exception is that some custom Governor contracts limit who can call `queue()`.

### *How long will the proposal be queued?*

This depends on the Timelock Delay of the Timelock contract. You can check that delay on Etherscan until Tally adds it to the [Broken link](https://docs.tally.xyz/how-to-use-tally/broken-reference "mention").

### *What does it mean to “execute” a proposal?*

**Executing** a proposal runs its function calls on-chain. Each proposal is associated with one or more function calls, which are visible in the `Executable Code` section of the [Proposal page](https://docs.tally.xyz/how-to-use-tally/broken-reference). These calls can do things like transfer assets from the treasury, update parameters of the Governor itself, change or upgrade a DeFi protocol, or call another smart contract.

### *Who can execute a proposal?*

Generally, anyone can execute a proposal that has passed! The only exception is when a custom Governor contract limits who can call `execute()`.

{% hint style="info" %}

#### *Sending ETH when executing a proposal*

In some situations it is important to send ETH at the same time as executing a proposal (for example, when paying the Toll for sending a crosschain message to a bridge). In this case, it may be necessary to send ETH as part of the execution of the proposal.
{% endhint %}

## Canceling Proposals

To cancel a proposal, click the three-dot menu to access additional actions. You can also copy the proposal's URL and view contextual information.

<figure><img src="https://p434.p1.n0.cdn.getcloudapp.com/items/E0uRPy90/f9fa4b65-08c5-4f0c-9971-fe7ef4308be8.jpg?v=e790800cb7f502c072447917bd021510" alt=""><figcaption></figcaption></figure>

### *When can a proposal be canceled?*

It depends! There isn’t a standard version of cancel logic across Governor implementations. Governor Alpha, Governor Bravo and OpenZeppelin Governor each have different behavior.

**OpenZeppelin Governor**

OpenZeppelin Governor leaves the cancellation up to the developer implementing the contract. Many organizations implement a `Canceller` role that gives a list of addresses the power to cancel proposals.

**Governor Alpha**

If the proposer’s voting power drops below the voting threshold, anyone can cancel that proposal.

**Governor Bravo**

Same as Governor Alpha. Also, the proposer can always cancel their proposal.

### *Can a canceled proposal be re-submitted?*

Not if it’s the exact same one. To re-submit a proposal, create a new proposal with the same executable code.
