In my private life I run a mail server, have done so for almost 20 years. Recently (as in the last 12 months) we moved to a VPS because I no longer had (or wanted) the infrastructure to run a server in-house. Since then I've been fighting a losing battle to get legitimate email to users on Yahoo particularly and some other ISPs. Why? Well Yahoo won't tell me. Apparently they don't really want to fix the SPAM issue, they just want me to go away. I have yet to get one piece of information that I could actually use to figure out why I'm being blocked. Yet the biggest spammers I see hitting my SPAM mailbox are from Yahoo. So while they don't mind their own users sending SPAM (and OK, some of it is just masquerading as coming from Yahoo, but still...) they will block legitimate mail to their users with apparently no real recourse apart from telling you to check everything you've already checked and fix the problems.
Here's a hint Yahoo. If you don't tell me what the problems are, I can't fix them. A basic tenet of support. If you keep me in the dark then I will have to start banning users with yahoo.com* addresses as it is just too hard to deal with you. I'll have to tell them all to get a real mail account, like Gmail, so they don't have to bitch about not getting important emails. Perhaps this is why you are losing users?
While I was researching the possible reasons for by blocking I found that there are some really dodgy practices going on out there. I checked my Reputation Score with a number of sources, and found that it was pretty good, except for one, Cisco's SenderBase. And I can't send email to them about the problem from the problematic domain. Mind you one had information on email that went back 4 years and showed no recent activity - and I didn't own that IP address 4 years ago. There is one, Barracuda, that suggests you sign up at EmailReg.org for $20 per year to bypass their reputation filter - um, that is uncomfortably close to blackmail for my liking. Then there is the abuse.net system. It appears that many reputation scores will reduce your reputation if you haven't taken the trouble to register a contact address for your domains at abuse.net. WTF? The internet standard is that there is always a postmaster@ address that must go to a real person. In recent times it has also become common practice to have an abuse@ address. Since when does it become mandatory to register this somewhere? How does that in any way contribute to the removal of SPAM?
Abuse.net also has some quirks. With the rise of SPAM many people who set up a new domain take the precaution of using a hidden registration option offered by many domain registrars, to avoid having your contact details harvestable by spammers. And guess what, you can't register these at abuse.net because they believe that you are likely to be a spammer if you want anonymity. Catch 22.
So the upshot appears to be don't send email - use a carrier pigeon instead.