{
  "$schema": "https://degreesofsatoshi.com/encyclopedia/schemas/article-v1.json",
  "schemaVersion": "1.0.0",
  "id": "rollup-sequencers",
  "canonical": "https://degreesofsatoshi.com/encyclopedia/rollup-sequencers/",
  "collection": "ethereum",
  "title": "Rollup sequencers: who puts transactions in order?",
  "description": "Learn what a rollup sequencer does, why a fast acknowledgment differs from settlement, and how ordering, outages and escape paths affect users.",
  "aliases": [
    "sequencer",
    "rollup operator",
    "soft confirmation"
  ],
  "dates": {
    "published": "2026-10-02",
    "modified": "2026-10-02",
    "verified": "2026-10-02T15:10:23.134Z",
    "dataAsOf": null
  },
  "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 rollup sequencer selects and orders transactions into the rollup’s execution history. Its quick acknowledgment can arrive before data or proofs reach Ethereum. Sequencing, verification and settlement are separate roles, and outage or censorship protections depend on the deployed rollup.",
    "claimId": "rollup-sequencers-quick-answer",
    "sourceIds": [
      "optimistic",
      "validity"
    ]
  },
  "keyFacts": [
    {
      "label": "Primary role",
      "value": "Choose and order rollup transactions",
      "sourceIds": [
        "optimistic",
        "validity"
      ],
      "id": "primary-role",
      "claimId": "rollup-sequencers-fact-primary-role"
    },
    {
      "label": "Early acknowledgment",
      "value": "Can precede Ethereum publication and settlement",
      "sourceIds": [
        "optimistic",
        "validity"
      ],
      "id": "early-acknowledgment",
      "claimId": "rollup-sequencers-fact-early-acknowledgment"
    },
    {
      "label": "Escape path",
      "value": "Forced inclusion and exit mechanisms vary by implementation",
      "sourceIds": [
        "optimistic",
        "validity"
      ],
      "id": "escape-path",
      "claimId": "rollup-sequencers-fact-escape-path"
    }
  ],
  "prerequisites": [
    "ethereum-layer-2",
    "ethereum-transactions-and-nonces"
  ],
  "sections": [
    {
      "id": "ordering-role",
      "heading": "The sequencer decides what executes next",
      "sourceIds": [
        "optimistic",
        "validity"
      ],
      "paragraphs": [
        "Transaction order matters because each operation sees the state left by earlier operations. Rollups use a sequencing process to assemble this ordered history. Some deployments place that role in one operator’s hands, while others design additional operators or different selection mechanisms.",
        "The sequencer is not automatically the same component as a prover, challenger or Ethereum validator. One organization may operate several components, but their responsibilities differ. Ordering produces a proposed history; the settlement rules determine how it is accepted."
      ]
    },
    {
      "id": "worked-example",
      "heading": "Example: two buyers and one remaining ticket",
      "sourceIds": [
        "optimistic",
        "validity"
      ],
      "paragraphs": [
        "Imagine a contract has one ticket remaining and two valid purchase requests arrive. If the sequencer places Maya’s transaction first, her purchase can consume the ticket and Leo’s later attempt may revert. Reverse the order and the result can reverse too.",
        "Both ordered executions could follow the contract’s rules. That is why a proof of valid execution does not establish that ordering was fair. A sequencer’s ability to delay, omit or reorder transactions is a separate question from its ability to invent invalid balances."
      ]
    },
    {
      "id": "confirmation-stages",
      "heading": "A fast response is useful, but ask what it commits to",
      "sourceIds": [
        "optimistic",
        "validity",
        "data-availability"
      ],
      "paragraphs": [
        "A wallet may show the result shortly after a sequencer accepts a transaction. The relevant data may be published to Ethereum later, and a validity proof or dispute process can introduce further stages. These events should not all be compressed into one undefined word: confirmed.",
        "For a concrete transaction, identify the stage the interface reports and the assumptions behind it. An acknowledgment from one operator is different evidence from a state update accepted by the settlement contract and included in finalized Ethereum history."
      ]
    },
    {
      "id": "outages-and-inclusion",
      "heading": "Outages test the paths around the operator",
      "sourceIds": [
        "optimistic",
        "validity"
      ],
      "paragraphs": [
        "A single sequencer can be a point of failure for prompt service even when it cannot make the settlement contract accept an invalid state. If it stops, users need to know whether another operator can continue, whether they can force inclusion through Ethereum, and how they obtain the data required to act.",
        "These protections are deployment-specific. A design document’s proposed escape mechanism does not prove that a particular production system exposes it today or that it is inexpensive. Check the actual contracts, permissions and documented conditions before relying on an emergency route."
      ]
    }
  ],
  "faq": [
    {
      "question": "Can a sequencer choose transaction order?",
      "answer": "Yes, ordering is its core role in the designs described here. The deployed protocol determines any constraints, competing operators or alternative inclusion paths.",
      "sourceIds": [
        "optimistic",
        "validity"
      ]
    },
    {
      "question": "Does a centralized sequencer make every balance untrustworthy?",
      "answer": "That does not follow. State validity can be enforced separately by proofs or challenges. Centralization still affects ordering, censorship and availability of prompt service.",
      "sourceIds": [
        "optimistic",
        "validity"
      ]
    },
    {
      "question": "Can I always bypass a failed sequencer?",
      "answer": "Do not assume so. The route, waiting conditions, permissions and data requirements depend on the actual deployment.",
      "sourceIds": [
        "optimistic",
        "validity"
      ]
    }
  ],
  "claims": [
    {
      "id": "rollup-sequencers-quick-answer",
      "articleSlug": "rollup-sequencers",
      "statement": "A rollup sequencer selects and orders transactions into the rollup’s execution history. Its quick acknowledgment can arrive before data or proofs reach Ethereum. Sequencing, verification and settlement are separate roles, and outage or censorship protections depend on the deployed rollup.",
      "sourceIds": [
        "source-e415b897a2b02da7",
        "source-b267e88f1835f980"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-e415b897a2b02da7",
          "locator": "Fraud proving; censorship resistance; exiting the rollup"
        },
        {
          "sourceId": "source-b267e88f1835f980",
          "locator": "Data availability; validity proofs; withdrawals; EVM compatibility"
        }
      ],
      "scope": {
        "collection": "ethereum",
        "dataAsOf": null,
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T15:10:23.134Z",
        "reviewer": "automated independent verification",
        "notes": [
          "Checked ordering versus validity/settlement and deployment-specific force-inclusion. Ticket competition example correctly depends on order."
        ]
      }
    },
    {
      "id": "rollup-sequencers-fact-primary-role",
      "articleSlug": "rollup-sequencers",
      "statement": "Primary role: Choose and order rollup transactions",
      "sourceIds": [
        "source-e415b897a2b02da7",
        "source-b267e88f1835f980"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-e415b897a2b02da7",
          "locator": "Fraud proving; censorship resistance; exiting the rollup"
        },
        {
          "sourceId": "source-b267e88f1835f980",
          "locator": "Data availability; validity proofs; withdrawals; EVM compatibility"
        }
      ],
      "scope": {
        "collection": "ethereum",
        "dataAsOf": null,
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T15:10:23.134Z",
        "reviewer": "automated independent verification",
        "notes": [
          "Checked ordering versus validity/settlement and deployment-specific force-inclusion. Ticket competition example correctly depends on order."
        ]
      }
    },
    {
      "id": "rollup-sequencers-fact-early-acknowledgment",
      "articleSlug": "rollup-sequencers",
      "statement": "Early acknowledgment: Can precede Ethereum publication and settlement",
      "sourceIds": [
        "source-e415b897a2b02da7",
        "source-b267e88f1835f980"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-e415b897a2b02da7",
          "locator": "Fraud proving; censorship resistance; exiting the rollup"
        },
        {
          "sourceId": "source-b267e88f1835f980",
          "locator": "Data availability; validity proofs; withdrawals; EVM compatibility"
        }
      ],
      "scope": {
        "collection": "ethereum",
        "dataAsOf": null,
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T15:10:23.134Z",
        "reviewer": "automated independent verification",
        "notes": [
          "Checked ordering versus validity/settlement and deployment-specific force-inclusion. Ticket competition example correctly depends on order."
        ]
      }
    },
    {
      "id": "rollup-sequencers-fact-escape-path",
      "articleSlug": "rollup-sequencers",
      "statement": "Escape path: Forced inclusion and exit mechanisms vary by implementation",
      "sourceIds": [
        "source-e415b897a2b02da7",
        "source-b267e88f1835f980"
      ],
      "sourceLocators": [
        {
          "sourceId": "source-e415b897a2b02da7",
          "locator": "Fraud proving; censorship resistance; exiting the rollup"
        },
        {
          "sourceId": "source-b267e88f1835f980",
          "locator": "Data availability; validity proofs; withdrawals; EVM compatibility"
        }
      ],
      "scope": {
        "collection": "ethereum",
        "dataAsOf": null,
        "blockHeight": null
      },
      "qualification": "",
      "evidenceStatus": "documented",
      "verification": {
        "status": "verified",
        "method": "independent automated source review",
        "checkedAt": "2026-10-02T15:10:23.134Z",
        "reviewer": "automated independent verification",
        "notes": [
          "Checked ordering versus validity/settlement and deployment-specific force-inclusion. Ticket competition example correctly depends on order."
        ]
      }
    }
  ],
  "sources": [
    {
      "id": "optimistic",
      "label": "Optimistic rollups",
      "publisher": "ethereum.org contributors",
      "url": "https://raw.githubusercontent.com/ethereum/ethereum-org-website/dcc900ff125891da5b6c723b905a7113cf1bd864/public/content/developers/docs/scaling/optimistic-rollups/index.md",
      "canonicalUrl": "https://ethereum.org/en/developers/docs/scaling/optimistic-rollups/",
      "version": "dcc900ff125891da5b6c723b905a7113cf1bd864",
      "checkedAt": "2026-10-02T14:35:47.579696+00:00",
      "locator": "Fraud proving; censorship resistance; exiting the rollup",
      "sha256": "cb9e43862d4716e7fac18423a53aa8efde7597ef9ed4c19d65acb7ceca2f21cd",
      "note": "Supports challenge periods, dispute verification, sequencer ordering and withdrawal distinctions; concrete timings depend on the implementation.",
      "recordId": "source-e415b897a2b02da7",
      "contentSha256": "cb9e43862d4716e7fac18423a53aa8efde7597ef9ed4c19d65acb7ceca2f21cd"
    },
    {
      "id": "validity",
      "label": "Zero-knowledge rollups",
      "publisher": "ethereum.org contributors",
      "url": "https://raw.githubusercontent.com/ethereum/ethereum-org-website/dcc900ff125891da5b6c723b905a7113cf1bd864/public/content/developers/docs/scaling/zk-rollups/index.md",
      "canonicalUrl": "https://ethereum.org/en/developers/docs/scaling/zk-rollups/",
      "version": "dcc900ff125891da5b6c723b905a7113cf1bd864",
      "checkedAt": "2026-10-02T14:35:47.579728+00:00",
      "locator": "Data availability; validity proofs; withdrawals; EVM compatibility",
      "sha256": "c3d22a952a4e66b8ee0bd45a80fd013b2a6ee9d78e1d346482297c2768fe2712",
      "note": "Supports validity proofs and public rollup data; no claim that every withdrawal is instant or that every ZK system is private.",
      "recordId": "source-b267e88f1835f980",
      "contentSha256": "c3d22a952a4e66b8ee0bd45a80fd013b2a6ee9d78e1d346482297c2768fe2712"
    },
    {
      "id": "data-availability",
      "label": "Data availability",
      "publisher": "ethereum.org contributors",
      "url": "https://raw.githubusercontent.com/ethereum/ethereum-org-website/dcc900ff125891da5b6c723b905a7113cf1bd864/public/content/developers/docs/data-availability/index.md",
      "canonicalUrl": "https://ethereum.org/en/developers/docs/data-availability/",
      "version": "dcc900ff125891da5b6c723b905a7113cf1bd864",
      "checkedAt": "2026-10-02T14:35:47.112785+00:00",
      "locator": "Data availability problem; rollups; availability versus retrievability",
      "sha256": "8ef54fe5d3ff94dec32a7de22795770098bed269e308d5a2ad1dd6e542d909e9",
      "note": "Supports why a hash is not sufficient to reconstruct data and why availability differs from permanent historical storage.",
      "recordId": "source-73ba119e5fae20da",
      "contentSha256": "8ef54fe5d3ff94dec32a7de22795770098bed269e308d5a2ad1dd6e542d909e9"
    }
  ],
  "related": {
    "articles": [
      "optimistic-rollups",
      "validity-rollups",
      "ethereum-blobs-data-availability"
    ],
    "dossiers": [],
    "wallets": []
  },
  "revisionHistory": [
    {
      "date": "2026-10-02",
      "kind": "published",
      "summary": "First publication after primary-source research and independent automated verification."
    }
  ],
  "citation": "Degrees of Satoshi editorial project. “Rollup sequencers: who puts transactions in order?.” Published 2026-10-02; updated 2026-10-02. https://degreesofsatoshi.com/encyclopedia/rollup-sequencers/"
}
