I self-host and don't have a spam filter. Spam makes up about 1 in 5 messages I receive. It's always the same spam campaigns that would be easily filtered with a few regexes.
Self-hosting allows me to use a different receiving address for each entity I contact, so I know exactly who put me on spam lists and if it gets bad I can route that address to the garbage bin.
It's been a while since I've been an SMTP server admin but when I was I managed a few hundred thousand mailboxes under different domains. Most likely know one knows about your domain and it has little traffic. On average I saw users domains get around 5 spam to 1 ham. Of course you have outliers. I had one domain that received around 1000 spam to 1 ham. That was a domain that looked like it could belong to a university and it got absolutely flooded.
Anecdotes are not a great thing to run mail servers on, broad statistics are.