MergeRamp / Field guide 02

Auto-merge vs merge queue.

Auto-merge finishes a ready PR. A queue coordinates a busy branch. Here’s how to decide what your team needs.

The short answer

Auto-merge completes a PR when its merge requirements are met. A merge queue coordinates validation and merging across waiting PRs. Use the first to stop watching a merge button; consider the second when keeping branches current becomes a recurring job.

What each one handles

GitHub auto-merge waits for required reviews and checks, then completes the PR. It must be enabled in the repository settings. GitHub’s auto-merge documentation explains its availability and behavior.

Auto-merge compared with a queue. Scroll horizontally on smaller screens.
ResponsibilityAuto-merge aloneA merge queue
Completing a ready PRAutomatic, once requirements pass.Handled by the queue or delegated to GitHub.
Coordinating waiting PRsNo ordered queue of its own.Manages which changes advance and in what order.
Keeping validation currentDepends on branch protection and branch updates.Coordinates validation against the base and preceding changes.
Testing strategyUses the PR’s required checks.May be serial, speculative, or batched; check the implementation.

GitHub’s native queue tests a merge group containing the base branch and changes ahead in the line. It is one implementation of a queue; third-party tools can use different mechanisms. How GitHub’s queue works.

What happens after main moves?

Suppose PR A and PR B both pass CI against the same version of main. A merges first. B’s passing result does not tell you whether its changes work with A’s changes.

Illustrative example · strict protection, without a queue
  1. 01
    A lands. B is now behind.

    Auto-merge is enabled for B, but its branch needs updating.

  2. 02
    A developer updates B and CI runs again.

    If C lands in the meantime, the cycle can repeat.

  3. 03
    A queue takes over the coordination.

    It manages the next candidate and the checks needed to advance it.

With strict required checks, GitHub requires an up-to-date branch before merging. Loose checks allow an outdated branch to merge. Auto-merge follows the configured requirements; it does not replace them. Read about strict and loose status checks.

A queue can remove repeated manual coordination. It cannot detect an incompatibility your tests do not cover, and it does not make a weak test suite comprehensive.

Start with the bottleneck.

Auto-merge may be enough

Choose it when you mainly want to leave a PR after approval and let CI finish. If ready-to-merge PRs rarely overlap, occasional manual branch updates may cost less effort than adopting another tool.

Add a queue when coordination becomes work

Consider a queue when people repeatedly update branches, several PRs are ready at once, or ownership of the next merge is unclear. Track a week of interruptions and repeated CI runs before choosing an implementation.

Match the queue to the workload

A serial queue is straightforward to follow but waits for one candidate’s CI before advancing the next. If merge demand routinely exceeds that capacity, compare batching and parallel validation. More concurrency can also consume more runner capacity.

Check your setup

  1. Review the branch requirements. Confirm which reviews and jobs are required, whether branches must be current, and who can bypass the rules.
  2. Verify the right CI events. GitHub’s native queue needs merge_group checks. A third-party tool may update PR branches or create its own test branches; follow its setup instructions. Native queue CI setup.
  3. Exercise two waiting PRs. Merge one, fail the other, and check what happens when a branch becomes outdated. Inspect the commit attached to each result.
  4. Measure the outcome. Compare time to merge, repeated CI runs, and manual interventions. Keep the setup only if it helps your team.

A queue can use auto-merge.

MergeRamp’s planned workflow combines both ideas. Developers enable GitHub auto-merge to join the line. MergeRamp coordinates one active PR per base branch and a required gate; GitHub enforces requirements and performs the merge.

Currently in development. MergeRamp’s GitHub integration and installation flow are still being built. The website demo illustrates the intended serial workflow.

Common questions

Does enabling auto-merge create a queue?

No. Auto-merge on its own does not coordinate a line of PRs. A separate queue can use that setting as its enqueue signal, which is the workflow MergeRamp is being built around.

Why can’t I see the auto-merge button?

Check that auto-merge is enabled for the repository and that you have write access. GitHub only shows the option when a PR cannot be merged immediately, such as while required checks are pending. Check GitHub’s prerequisites.

Do I need Enterprise for auto-merge?

Private repositories on GitHub Team support auto-merge. GitHub’s native queue for private organization repositories requires Enterprise Cloud. See our GitHub Team guide for alternatives.