Image requirements

The types of images and media you can send in a message depend largely on the platform you send messages to (email, slack, etc).

General image and media guidelines

While this page provides information about the maximum sizes and file types supported for each platform, you should generally limit images in your messages to the smallest possible file sizes.

While some messages support larger file sizes, a person viewing your message on their phone in cellular coverage might have trouble receiving messages with large images and attachments. Limiting the size of your media helps ensure that your audience receives your message as intended.

Images in emails

The image types and sizes we support depend on whether you host your images yourself or upload images directly through our editor.

Uploading images

You can upload images when using the drag-and-drop or rich text editors. If you upload using our drag-and-drop editor, you can reuse your uploaded image across messages in your workspace.

When you upload images to Customer.io:

  • Supported file types: JPG/JPEG, PNG, GIF
  • Maximum size: 1MB
  • Images more than 1800px wide are automatically compressed.

Hosting your own images

Hosting your own images lets you control your own image URLs, and provides more flexibility with the size or format of your images.

However, while hosting your own images can provide greater flexibility in the sizes and types of images you add to your messages in Customer.io, your audience’s email clients may support different sizes and types of images.

We recommend limiting your hosted images to common file types (.jpg, .jpeg, .gif, or .png) and reasonable sizes (smaller than 1MB) to ensure that your audience sees your whole message, no matter what client or provider they use.

When you host your own images:

  • URLs must end in a known image file extension, i.e. .jpg, .jpeg, .gif, .png. Supported file extensions are determined by individual recipients' email clients.

Images in push notifications

You can send images as a part of custom push notification payloads. While you host the images that you send in push notifications, your images are still subject to the requirements of the platform you send notifications to—Android or iOS.

If you use an image in a notification intended for people on both Android and iOS platforms, you should use the most restrictive image requirements to ensure that your audience receives your notification as intended, no matter their device platform.

Android push notification image support

When you provide an image URL in a custom push notification payload, your audience gets the notification and then downloads the image after the notification is on the phone.

  • Supported file types: BMP, GIF, JPEG, PNG, WebP, HEIF (requires Android 8.0+)
  • Maximum size: 1MB
{
  "message":{
    "notification": {
      "body" : "This is an FCM notification that displays an image.!",
      "title" : "FCM Notification",
      "image": "url-to-image"
    }
  }
}

iOS push notification image support

If you want to send an image as a part of an iOS push notification, you need to add a notification service extension. The service extension allows client devices to receive notifications from your push.

iOS supports JPEG, GIF, and PNG images.

{
  "aps": {
    "mutable-content": 1,
    "alert": {
       "title": "Message with image!",
       "body": "Check out this image!"
    }
  },
  "image": "url-to-image"
}

Images in Slack

You can share images that you host, or from any hosting service with a slack channel. Images will preview in the channel if your hosting URL ends in a known image extension—.jpg, .gif, .png, etc.

While Slack technically supports files up to 1GB, large images likely won’t preview properly in a channel—especially for members of the channel using their phone or with slower connection speeds. Try limiting the size of your images so that everybody in the channel can see them.

Copied to clipboard!