Knowledge base

PMTA knowledge base›Block <domain>›Directive§ 3.3.10.85

backoff-max-smtp-out

<domain>set by the Hub

How many simultaneous connections to keep while the queue is in backoff
in the configuration this is a linebackoff-max-smtp-out 2inside the block <domain>
Connections for the duration of backoff

The same as max-smtp-out, but it applies while the queue is in backoff. Connections are the first thing worth cutting when a receiver starts refusing: it watches them more closely than volume.

Usually one or two is set. The point is not to deliver more slowly but to stop looking pushy while the issue is being sorted out.

The main trap. Leaving the value equal to the normal one. Then backoff changes only the retry schedule, while the pressure on the receiver stays the same — and the refusals continue for exactly the same reason they started.
What the Hub does. It writes it from the node preset: one in “Careful,” two in “Balanced,” five in “Aggressive” — five to eight times fewer than the normal number of connections of the same preset (5, 15 and 40). The line is not written for addresses under warm-up: they already have a single connection.
Recommended values
Mode Per address (vMTA) In the provider rule When this is your case
Warm-up, cold address 1 — An address younger than 4–6 weeks or back from a pause
Careful 1 — Strict receivers, questionable reputation, the first weeks after warm-up
Balanced default 2 — Normal operation of an established fleet
Aggressive 5 — Warmed-up addresses, friendly receivers, urgent volumes
PowerMTA default 20 — If the directive is not written at all

Single digits, not dozens. A receiving server counts connections most carefully of all: a queue that slowed down because of it should not keep as many conversations with it as before.

It has its own default — 20, unlike the other directives in the family, which take the normal value. Twenty connections for backoff mode is a lot, and leaving the default is almost always wrong.

Count it together with the rate. One message an hour does not need even one permanent connection: two or three are more than enough.

The order of magnitude is our recommendation. From the manual here are the default of 20 and the fact that the directive replaces max-smtp-out for the duration of backoff mode.
Example configuration
# in backoff mode we keep single-digit connections, not dozens
<domain hotmail.com>
    max-smtp-out 15
    backoff-max-smtp-out 2</domain>
The default here is twenty, that is, more than in this queue’s normal mode. The line has to be set explicitly; silence gives the worst of the options.
yellow — — directive names, blue — blocks. They are highlighted the same way in the text of the card.
▲

Common mistakes and problems

what people get wrong and how it ends2 mistakes▶

Leaving the default

§ 3.3.10.85

What it costsThe default here is twenty — often more than the queue is allowed in normal mode. Backoff mode turns out to be not gentle but more aggressive than normal.
How to spot itThe number of connections did not decrease or even grew after the queue went into backoff.
How to do it rightSet it explicitly, in single digits. It is the only directive in the family where silence gives the worst option.

Keeping as many connections as messages

our experience

What it costsAt a rate of a message or two an hour, a dozen connections will sit idle, taking up slots both on your side and at the receiving server — and at exactly the receiving server that slowed the queue down.
How to spot itIn backoff mode there are noticeably more connections than messages per hour.
How to do it rightTwo or three connections are enough for any backoff rate.
Compatibility
PowerMTA 6.0
described in the manual of this version · platform: any
The vendor does not state the first version for every directive — there is no note here. The name also appears in the 5.0 edition of the manual.
Reference data
Syntax
backoff-max-smtp-out <integer>
Values
an integer number of simultaneous connections
Default
20 § 3.3.10.85
Applying
reload, no restart needed
Queue
will not touch what is already queued
Where to write it
<domain>
How many times
once in the block
Everything here comes from the manual, with the section.
Inheritance
The value merges across <domain> blocks from general to specific: the best-matching block wins, not the last one in the file. Unlike its neighbors in the family, it has its own default — twenty, not “same as in normal mode.” It is picked up by pmta reload.
How to check on the node
The queue settings command prints the effective value; how many connections are open right now — the queue summary:
pmta show settings hotmail.com/vmta1 | grep -i backoff-max-smtp-out
pmta show queues --mode=backoff --maxitems=20
A queue in backoff mode with a dozen open connections is almost certainly a sign that the line was not set and the default of twenty is at work.
In the Hub
Managed at
Configurations → Bounce behavior
Value
The Hub picks it itself — pace, warm-up stage, metrics
Cost of a mistake
reversible: harms only while it is set
Scenarios
Tune the pace for a provider