How to add DKIM signature header on emails sent by Ruby on Rails

I have a Ruby on Rails application than sends emails.

Recently my users started complaining than they didn’t recieved their emails. They vanished, they didn’t even reached spam folder.

I have set up SPF, DMARC and DKIM records on the configuration of my DNS, but I found out than the emails sent by my application don’t include a DKIM signature header. I thought it was injected by the SMTP server

How can I add the corresponding DKIM signature header if I have no access to mxroute’s DKIM private key?

If it’s not being signed there’s two most likely answers:

  1. You’re not actually sending it through our servers.

  2. You’re capitalizing the domain name. Example: gets signed, does not.

So, just to understand how it works under the hood:

When I send a message through mxroute SMTP server, it gets signed by mxroute before sending it to the client?

Thank you very much Jarland.

What if it is none of the two most likely options?

  1. I checked the SMTP configuration and it is all correct
  2. Everyhing is lowercase

That is the correct understanding.

Those two are so common that I’d say the only other options are that you disabled DKIM on your domain in the control panel, or you’re mistaken about #1. The only other option is that I’m not aware of an issue, and I probably won’t find it from this thread. Feel free to send me information to check at Give me the sender, recipient, and subject of an email you recently sent through our platform that had this problem. If you can pull the full headers from the recipient side and put them in a link for me at, even better.

New answer:

I just updated three cPanel server configs to bring DKIM signing in line with exim 4.94 update. Possibly related. If it’s fixed now, and you’re on a cPanel box, that was it.