> ## Documentation Index
> Fetch the complete documentation index at: https://www.integrate.io/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# ETL: Email Report Destination

> How to configure the Email Report component to email pipeline results as a table, CSV, or text attachment in your Integrate.io ETL pipeline.

The Email Report component is a terminal (destination) component that emails the rows reaching it at the end of a pipeline. Use it to deliver a small result set, summary, or alert directly to people's inboxes as an inline table and/or a CSV or text attachment, without writing to a warehouse or file store first.

It is designed for digests and notifications, not bulk export: large inputs are trimmed to a sample (see [Limits](#limits)). For the full data set, write to a file or warehouse destination instead.

<Frame>
  <img src="https://mintcdn.com/integrateio/QDthm5WsrgAXX3wb/images/creating-packages/using-components-email-report/email-report-component.png?fit=max&auto=format&n=QDthm5WsrgAXX3wb&q=85&s=fc0af5f9ac5b7c8b42524a2b51d75f71" alt="Email Report component editor showing recipients, email contents, and delivery options" width="1058" height="1322" data-path="images/creating-packages/using-components-email-report/email-report-component.png" />
</Frame>

## Recipients & message

| Field                 | Description                                                       |
| :-------------------- | :---------------------------------------------------------------- |
| Send to               | Comma-separated list of recipient email addresses.                |
| Subject               | The subject line of the email.                                    |
| Intro text (optional) | Text shown above the table in the email body. Plain text or HTML. |

Reports are sent from `reports@integrate.io` by default. To send from your own domain, see [Sender address](#sender-address).

## Email contents

Select at least one output, otherwise the email would carry no data.

| Option                                        | Description                                                                                          |
| :-------------------------------------------- | :--------------------------------------------------------------------------------------------------- |
| Preview the rows as a table in the email body | Renders the rows as an HTML table in the email body (previews up to 1,000 rows).                     |
| Attach the rows as a CSV file                 | Attaches the rows as a CSV file. Optionally set the file name (default `report.csv`).                |
| Attach the rows as a text file                | Attaches the rows as a tab-delimited text file. Optionally set the file name (default `report.txt`). |

<Note>
  The CSV and text attachments are mutually exclusive: you can select one or the other (or neither). The body table is independent and can be combined with either attachment.
</Note>

## Delivery

| Setting                                         | Description                                                                                                                                                                                                                                 |
| :---------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Fail the job if the report email cannot be sent | Enabled by default. The job fails if the email cannot be delivered, so an undelivered notification surfaces as a job failure rather than a silent success. Disable for fire-and-forget notifications that should not affect the job result. |
| When the input is too large for one email       | **Truncate and send** (default): the report is trimmed to a sample and notes how many rows there were. **Fail the job**: stops the job so nothing is silently dropped.                                                                      |

## Limits

The Email Report is a digest, not a bulk export, so the output is bounded:

| Output                 | Limit                        |
| :--------------------- | :--------------------------- |
| Email body table       | Up to 1,000 rows             |
| CSV or text attachment | Up to 500,000 rows and 20 MB |

Larger inputs are trimmed to a sample. For the full data set, write to a file or warehouse destination.

## Sender address

By default, reports are sent from `reports@integrate.io`. To send from your own domain, configure the account-level Email Sender settings (**Settings** > **Account Settings** > **Email Sender**).

<Frame>
  <img src="https://mintcdn.com/integrateio/QDthm5WsrgAXX3wb/images/creating-packages/using-components-email-report/email-report-sender-settings.png?fit=max&auto=format&n=QDthm5WsrgAXX3wb&q=85&s=fc6c4fb9e2c869ff435904c0eef19252" alt="Email Sender settings with from address, from name, and reply-to fields" width="1201" height="369" data-path="images/creating-packages/using-components-email-report/email-report-sender-settings.png" />
</Frame>

| Field                | Description                                |
| :------------------- | :----------------------------------------- |
| From address         | The address reports are sent from.         |
| From name (optional) | The display name recipients see.           |
| Reply-to (optional)  | The address recipient replies are sent to. |

<Note>
  The sending domain must be approved for your account before it can be used. Contact support to enable a new sending domain.
</Note>

## Best practices

* Keep reports small and summarized. Use an upstream aggregate, limit, or filter so the email carries a digest rather than a full data set.
* For the complete output, write to a file storage or warehouse destination and use the email only for notification.
* Leave **Fail the job if the report email cannot be sent** enabled when delivery is critical, so a missed email is visible as a job failure.
* Authenticate a custom sending domain to improve deliverability and show your own brand to recipients.

## FAQ

**Q: Where are Email Report emails sent from?**

From `reports@integrate.io` by default. You can configure a custom sending domain in the Email Sender account settings.

**Q: What happens if my data is larger than the limits?**

By default the report is trimmed to a sample and the email notes how many rows there were. Choose **Fail the job** under "When the input is too large for one email" if a partial report is not acceptable. For the full data set, use a file or warehouse destination.

**Q: Can I attach both a CSV and a text file?**

No. The CSV and text attachments are mutually exclusive. You can include one of them (or neither), and the in-body table is independent.

**Q: Why did my job fail with an email error?**

"Fail the job if the report email cannot be sent" is enabled by default, so a delivery failure fails the job. Check that any custom sending domain is approved for your account.

## Related

<CardGroup cols={2}>
  <Card title="File Storage Destination" icon="arrow-right" href="/etl/using-components-file-storage-destination" horizontal />

  <Card title="Snowflake Destination" icon="arrow-right" href="/etl/using-components-snowflake-destination" horizontal />

  <Card title="Email & Web Notifications" icon="arrow-right" href="/etl/viewing-and-setting-web-and-email-notifications" horizontal />

  <Card title="Running Jobs" icon="arrow-right" href="/etl/running-jobs" horizontal />
</CardGroup>
