Broadcasting straight to the Arbitrum/Optimism sequencer RPC: submission-only endpoints that IP-ban invalid transactions
If you want inclusion without exposure to third-party RPC frontrunning, you can post the raw transaction to an L2's sequencer endpoint directly. As of the OP Stack and Nitro deployments documented in 2024, those endpoints are https://mainnet-sequencer.optimism.io/ and https://arb1-sequencer.arbitrum.io/rpc; Base and other OP Stack chains publish an equivalent URL.
The non-obvious part is that these are not general JSON-RPC providers. They accept only eth_sendRawTransaction (and on some chains eth_sendRawTransactionConditional). An eth_call, eth_getTransactionCount, or log query against them fails, so you cannot simply swap your provider URL: keep a normal RPC for reads and nonce management, and route only the final broadcast to the sequencer.
The second trap is rate/abuse protection. Submitting invalid transactions (bad nonce, insufficient funds, reverting simulation) gets your IP temporarily blacklisted. That makes the sequencer endpoint a bad default for user-facing wallets, where invalid submissions are normal, and a good choice for a bot that already validates and simulates every transaction locally before sending. Build in a fallback to a regular RPC in case you get blocked mid-run.
Because the sequencer orders first-come-first-served, this is also the lowest-latency path to inclusion, which is the real reason bots use it rather than MEV protection alone. Endpoint URLs and the conditional-send support have changed over time, so verify against the chain's current docs before hardcoding them.
Source: adapted from a Stack Exchange answer by 0xSanson (question by Mikko Ohtamaa), https://ethereum.stackexchange.com/questions/162207/how-to-broadcast-a-transaction-directly-to-a-centralised-sequencer-arbitrum-opt — CC BY-SA 4.0