How long are Inbound and Outbound messages stored in activity?

Content and Metadata

Postmark stores email content, events (e.g. delivery, click, open), and metadata for all messages for 45 days. After 45 days, Postmark deletes email content and related metadata for all delivered messages. Postmark stores aggregated statistics forever. This includes bounce and spam complaints. For historical Hard Bounce and Spam Complaints, they can be found under the Suppressions section of your Message Stream or via our Suppressions API (We don’t show message content in the suppression tab).

Postmark stores blocked inbound messages for 45 days.

To store messages for longer than 45 days, use Postmark’s Messages API to store messages in JSON format in your own database. Postmark’s API Explorer is available to test making the API calls.


For messages sent outbound, attachments are not retrievable via the API or Webhooks as Postmark does not host the attachment in any way.

For messages received inbound, attachments are also not retrievable via the API. The only time the full attachment base64 (the "Content" field) will be included is in the original POST to your inbound webhook URL, so you will want to store it at that time.

Postmark does not store the entire base64 bytes for attachments within the UI, but for both inbound and outbound, we’ll show up to 1MB of data in the Raw Source. To retrieve this, open the message within your Postmark UI and then click the Raw Source tab. There, you’ll find the bytes for the attachments received near the bottom. For larger attachments, you’ll see a [Message Truncated] note in the Raw Source.

Last updated May 25th, 2022

Still need some help?

Our customer success team has your back!