The license key sits on the node as an ordinary file. On Linux it is /etc/pmta/license, on Windows — license.dat in the installation directory.
The contents are opaque — it is a vendor-issued key that is not read or edited.
The manual names one strict requirement directly: on Windows the file must be saved in ASCII, not Unicode. The requirement looks trivial right up until the key is copied through a notepad that saves in UTF-16 — then the engine will not accept it, and the cause cannot be seen by eye.
The file is part of the node’s state. It lives in the configuration directory and is part of what is copied for recovery (backup-restore): recovering without it means a new request to support.
⚠️ And the license tier is unknown to the Hub: this data is not in telemetry. So connection presets are calculated without regard to which license the customer has — and the standard one silently cuts outgoing connections to two hundred (licensing).
When restoring a node, the file is needed just like the configuration: the Hub will restore the settings, but not the key.
What to check in the file:
| What | What it should be |
|---|---|
| location | /etc/pmta/license on Linux |
| encoding on Windows | ASCII, not Unicode — a requirement of the manual |
| permissions | the same as for the configuration: key material |
| backup | together with the configuration directory |
Checking the contents by eye is pointless — the key is opaque. The only real check is the one the engine does itself.
Copy the file, not the text. Transferring through an editor is exactly the source of the encoding problem; transferring as a file eliminates it.
# moving the key: as a file, not through an editor scp license root@node:/etc/pmta/licensechown pmta:pmta /etc/pmta/license && chmod 640 /etc/pmta/license
what people get wrong and how it ends3 mistakes▶
§ 2.2
§ 1.8
§ 2.2
3 relations
A license for a fleet, not for a serverThe file the mechanism is concerned with. § 2.6Installing on LinuxThe file is put in place during installation; without it the engine will not start. § 2.2Installing on WindowsThe file this procedure is about. § 2.1LicenseThe file this output refers to. § 5.7
pmta show license ls -l /etc/pmta/license
3 articles
◇The activation key is a prerequisite for installation, not a step after itWithout an activation key from SparkPost support the engine neither installs nor runs, and the license tier sets the outbound connection ceiling: on Standard everything above 200 is ignored.◇Cloud restrictionsClouds restrict outbound mail on port 25 until you ask them to lift the limit, and mailbox providers treat their address ranges with suspicion.◇How to turn a sending plan into hardwareTwo constants for sizing any node: about 2 KB of memory per queued recipient and spool space proportional to the total size of the messages.