Email Row Limits Don't Match Documentation

I have a dashboard that gets emailed to the owner of the company, and most of the tables on the dashboard are between 7-15 rows. Reading the documentation suggests that that is perfectly within the limits set up in reports, but my reports are all truncated at 10 rows:

You’ll notice in the email that Metabase excludes any text cards on the dashboard, and that the charts look different - Metabase reformats the charts to make them more legible in email. Additionally, tables that exceed either 10 columns or 20 rows get the rest of their results, up to 2000 rows, included as an attachment.
- https://www.metabase.com/docs/latest/users-guide/dashboard-subscriptions.html

I've seen other questions about the row limit in emails get answered with "it's a hardcoded value", but that answer doesn't make sense to me because it conflicts with the documentation. From what I've been able to glean of the code and github issues related to this, it also seems to be contrary to the original intent.

For example, issue #7022 suggests the row limit should be 20, just like the documentation. Indeed, the code in the patch contains the following lines:

const SOFT_LIMIT = 10;
const HARD_LIMIT = 25;
const TABLE_MAX_ROWS = 20;
const TABLE_MAX_COLS = 10;

I don't know what the soft limit is used for, but it appears to affect the display of some sort of warning. Nevertheless, it is the last two lines that were added. I'm left wondering where the row limit is set, and why it doesn't match the documentation? I also have to add my frustrations to the crowd that this isn't a configurable value.


Unfortunately a 10 row limitation in emails is a severe one for our use case, since it makes the reports unreliable for the owner of the company, since important lines are unceremoniously dropped off of the report and you have to look closely to see that Metabase truncated report date. Being a busy man, if something isn't reliable, he isn't inclined to try to figure it out.

I'd like to see an answer that addresses my questions about this, if for no other reason than to allow me to address how suitable Metabase is for our needs.

Hi @John1342
There has been some changes to the output format, so the row limit is currently 10.
When there's more results, then there's an attachment.

It sounds like your documentation needs updating then. Can you point me to where those changes were made? I'd like to take a look to see what I can see. If it's simple to do I might try my hand at a pull request; otherwise I may just have to abandon Metabase, sadly.

@John1342 You are welcome to submit a PR to update the documentation.
You can make your own version of Metabase if you need some specific requirements:
https://github.com/metabase/metabase/blob/master/src/metabase/pulse/render/body.clj#L52-L54

I'd be willing to submit a PR to update the documentation, but I don't understand how the limit is implemented and obviously can't find where it is either. Without that information I wouldn't know what to write or how to phrase it.

I take it you don't have any idea where the code is either? After reading your post it sounded like you might have had some idea.

@John1342 Click on the link I posted, which links exactly to where Metabase limits to 10 rows.

Wow, I don't know how I missed that. Thanks for being patient! I'll take a look.