Creating reports with Butler

There are two ways to create reports with Butler, via the Automation directory or via the Email Reports configurator.

Visual Reports

From your board, you can create visual email reports of the cards on your board, using one of four options. Visual email reports differ from text reports in that they contain a visual representation of the cards on the board, rather than just plain text. To create a visual email report:

  1. Select the Automation button at the top of your board and select Email reports.
  2. Select one of the 4 email report options: "board snapshot", "due soon", "overdue cards", or "my cards".

On the left hand side of the screen you can configure the:

  1. Date and time you'd like your recipients to receive the email report.
  2. Email addresses of the targeted recipients (Up to 10 recipients)
  3. Email subject
  4. Email message

On the right hand side of the screen there is a preview of the Email report, identical to what your recipients will see in their email.

When you are happy with the configuration of the report you can send yourself a test email and/or schedule the report by clicking the respective buttons.

To later view the email report command navigate to the Automation directory's Calendar tab.

Text Reports

You can ask Butler to collect a group of cards from the current board and create a report with their content. For example, let's say we want to send an email with all the tasks completed this week. You can achieve this by entering this calendar-scheduled command:

every friday at 11:45 pm,
create a report with all cards in list "Done",
and send an email notification to every member of the board
with subject "Weekly Report for week #{weeknumber}"
and message "{$report}"

Notice the use of two variables in the content of the email:

  • {weeknumber} will be replaced at execution time with the number of the current week in the year (you can use {usweeknumber} instead if your team uses U.S. week numbering.)
  • {$report} will be replaced with the contents of the report.

Note that visual reports are also available in reports created in the automation directory. To send a visual report, suffix the report variable with _html. For example:

every friday at 11:45 pm,
create a report with all cards in list "Done",
and send an email notification to every member of the board
with subject "Weekly Report for week #{weeknumber}"
and message "{$report_html}"

Here's a screenshot of the process of entering the command:


Customizing the report

The default format of the report is a simple list of card names linked to the respective cards. You can add more content or customize the report by specifying the 'using pattern' option (click on the pencil icon). The pattern is applied to each card in turn, replacing any variables with the content of the current card. For example:

create a report with all cards in list "Done"
using pattern "- [{cardname}]({cardlink}) ({cardmemberusernames}) {{%Priority}}"

A couple of things to notice:

  • The pattern uses markdown formatting. For example, the format [text](link) is used to produce a named link.
  • You can also use custom field variables to add custom field data (in this example, the Priority custom field).

You can create multiple reports in one command, and you can name the variables so that they can be used together. (Report variable names can only contain basic ASCII characters: letters 'a' to 'z' without accents, numeric digits, underscore.)

Example using multiple reports:

every friday at 11:45 pm,
create a report in variable "Doing"
with all cards in list "Doing"
using pattern "- [{cardname}]({cardlink}) ({cardmemberusernames}) {{%Priority}} => DUE on {cardduedate}",
create a report in variable "Done" with all cards in list "Done"
using pattern "- [{cardname}]({cardlink}) ({cardmemberusernames}) {{%Priority}} => DONE on {{%Completion Date}}",
and send an email notification to every member of the board
with subject "Report for week #{weeknumber}"
and message "Doing:\n\n{$Doing}\n\nDone:\n\n{$Done}"

Notes:

  • the sequence \n means 'new line', and to introduce a paragraph break in markdown, it needs to be entered twice in a row. The user interface automatically converts your carriage returns into these when you enter the command.
  • the second report uses a custom field named 'Completion Date' that in this example would be set automatically by another Butler command when the card moves to the 'Done' list.

Excluded variables: 

There are certain variables that cannot return data in a Butler report either due to the context that is required for the variable to return valid data, or due to the demand made on Trello's API to request the data. Below are some examples of each respectively:

  • Variables that require a specific trigger, such as {mentionedtext} requiring a trigger of "when a person is mentioned..".
  • Variables that return any card's time in list data, such as {carddaysinlist} or {carddaysinpreviouslist}.

The email generated by this command looks similar to this:


We're always improving Butler and take your feedback very much into account. If you would like more advanced reporting features, please contact us through https://trello.com/contact and let us know what you'd like to be able to achieve.