Digest Emails Not Sending to All Users – Need Help Debugging

Hi everyone,

A large Discourse forum is experiencing an issue where digest emails (activity summary emails) are not being delivered to all eligible users as expected.

Issue Details:

  • I understand that digest emails are sent only to inactive users, but based on our settings, there should still be many recipients.
  • Some users who were last seen within 180 days are not receiving digest emails.
  • There are no clear errors in the Admin > Emails > Skipped logs, but the emails are not being delivered.

Settings & Configurations Checked:

  1. User Activity-Based Sending:
  • Users who have visited recently shouldn’t receive digests, but I confirmed that there are many users who haven’t visited in 30+ days and still haven’t received one.
  1. suppress_digest_email_after_days:
  • Set to 180 days (default). However, users inactive for less than 180 days still aren’t receiving digests.
  1. default_email_digest_frequency:
  • Initially set to weekly (10080 minutes)
  • Changed to daily (1440 minutes), but still not pushing emails.
  1. Email Logs & Delivery Checks:
  • Admin > Emails > Sent/Skipped logs don’t indicate that digests were attempted and skipped.
  • No user-side email preferences blocking digests (checked on test accounts).
  1. Server & Email Provider:
  • Using a high-volume email provider that supports large-scale sending.
  • No evidence of rate limits or deliverability issues.
  • Other types of emails (notifications, password resets, etc.) are being delivered fine.

Questions:

  • Is there a way to force a digest email to be sent for all users meeting the inactivity criteria?
  • Could there be any underlying issue causing digests not to send, even when all settings seem correct?
  • Are there any known limits with large forums that could affect digest scheduling or sending?
  • Would adjusting any other settings help in ensuring that digests reach users regularly?

I’d appreciate any guidance or troubleshooting suggestions. Thanks in advance!

3 Likes

To test this, we set the digest frequency to 30 minutes, ensured a new post was made, and still, no digest emails were sent to eligible users.

2 Likes

I am assisting @emonunix on this. It appears we have a sidekiq job running every 30 minutes related to this process - without knowing how to troubleshoot this job it appears to run without issue. here is the current status.

Perhaps there other places to look for failures?

3 Likes

I’ve been testing different configurations to understand why digest emails aren’t being sent as expected. I attempted to set the digest frequency to 30 minutes for testing, but the setting failed to save and displayed an error after a few minutes.

As the forum size is large, I suspect this might be related to how Discourse processes these changes at scale. However, I didn’t see any error logs generated, which makes troubleshooting more difficult.

If anyone has insights into why settings might fail to save—especially in large forums—or how to force logs to capture more details, I’d appreciate any guidance.

3 Likes

I’m encountering some errors in the console:

Errors in Console:

  1. 502 Bad Gateway
  • URL: /admin/site_settings/default_email_digest_frequency
  • Failed to load resource: the server responded with a status of 502.
  1. 429 Too Many Requests
  • URL: /message-bus/9787a3d46f4640699f8b3bd12d33a6c8/poll
  • Console error: POST /message-bus/... 429 (Too Many Requests)

Not sure what’s causing this—any insights would be appreciated!

3 Likes

Adding more detail here. We have been through this guide several times:

It does not provided any resolution for our issue.

Does anyone have any next steps to check why the digest are not being sent? Is there a process or some way to check that the system is doing…

  • The lookup of eligible subscribers?
  • Getting the list?
  • Putting the list into memory?
  • Moving to generation etc?
2 Likes

Quick question, did you retroactively change this setting for all users? Because as far as I know, once it’s set at account creation, it does not change if you alter the defaults.

Check your own profile and see if it’s the value you expect.

3 Likes

Yes when I checked mine and some random users profile I found that the settings reflected there.

1 Like

Thanks @Bas, we did update it to 30, and you can apply it retroactively—the system gives a message confirming that user records are being updated when making this change.

Also, I don’t think the error is related to the digest emails not sending because we’ve confirmed that users with the correct setting still aren’t receiving them.

Let me know if you have any other thoughts!

2 Likes

Have you ch checked a few of the accounts not receiving to see if they have categories &/or tags muted? I believe if you have it muted th digest will not include topics.

Otherwise the team is likely ty best resource.

Another the ng with your mail server did you add dkim DNS record to your domain? Not sure if this is needed from all SMTP providers. But can help with emails not marked as spam and ir blocked. Have you asked users to check spam?

2 Likes

Thanks @Heliosurge to be clear, the emails are not sent at all, so it’s not a question of if they are seen or blocked, or delivered to spam - discourse is not processing them in the first place. Here is a screenshot of the activity the last few days:

Bear in mind this should be something like 90 digest a day based on the settings and configuration.

[screenshot has been edited out since it contains user’s email addresses]

So from what we can tell the emails are not queued to begin with - it’s as if the job is not running, or failing…or both.

2 Likes

Okay but the other component is to also check a member’s preference ls in tags and categories. It is possible they might have things muted

Another thing that a team member would beat to answer is if a member uses the unsubscribe in email link if it visibly changes things in the user preferences.

To be honest I do find this issue as iddm. But there might be some kind of bug maybe.

Everything you’ve shared imho should be working as expected.

2 Likes

@Heliosurge sorry to answer your question. Sure there could be a few users that have settings that prevent them from getting the digest. We have a number of demo users on the site where we are controlling the settings and have verified (we think) that things should be delivered. So I don’t think it’s a case were all 80 people have adjusted their settings to NOT get the digest.

One thing that is odd, today I noticed that when I visit the site the ‘last visit’ line is very old, like 9 days, but I visit everyday - so that is not accurate. Could that logic also be related to what discourse is considering as the date to send the digest? I have no idea, just seemed odd to me, and at this point we are pretty much grasping at straws for next steps…

2 Likes

This could be related. Having other users check that to see if they notice if accurate.

To confirm you’re looking at last site visit? Your pic I believe that is last activity/post in topic.

1 Like

Thanks @Heliosurge
As @Jacob_Peebles is visiting the site frequently above ____ last visit ____ line he should see very new posts only, like 5/10 minutes ago or 1/2 hours ago.

We couldn’t figure it out why discourse is showing 8/9 days old post above last visit.
I checked it from my account, I didn’t encounter this issue.

1 Like

Really not sure from here. As an admin were often the last ones to become aware of an issue

You said your last visit info seems correct while @Jacob_Peebles last visit is not updating correctly?

Wonder how many other users are having similar.

Jacob is your account receiving digest emails? Now granted with being online often you might not be in the iirc time frame to have a digest email sent. However do not see a setting for how long a user is away unless that is the setting you mentioned about 30m, hour, daily, weekly.

Definitely appreciate how this would be frustrating as it could be used to help reduce emails sent load by having only considered necessary emails being sent.

1 Like

@Heliosurge no, I am not receiving digest, but not a single user has a digest in the last 3 days also.

Yeah, it’s super frustrating there is no doubt. From what we can see there is no system error, nothing in sidekiq, nothing in the logs, so really this could happen to anyone…and they would never know emails are not being sent as expected…scary.

Might be related to this site setting

This setting can allow a member who has not logged out if I understand correctly up to 60 days.

Maybe try 2hrs?!? Not sure why th setting is set to 60 days. Unless the setting description is not accurate?

Because it is pain in the tender places login constantly. If i remember right I’m using 365 days. And no known issues of that kind.

2 Likes

The session age just makes it so we don’t have to constantly re log-in, which has nothing to do with the email summaries as as I know.

3 Likes