I personally feel one of the reasons why people pick Batman over Superman is because they find it easier to relate to him. Now yes, I understand he's a billionaire, but it's the human that he is that people relate to. He had something bad happen, he grieved, then decided to do something. People like him because they see him as believable, regardless of whether he is or isn't, because of the fact that he's a pure human being. He's shown to be vulnerable, yet strong, and that allows people to get behind him.
People have a hard time relating to Superman because he's not human. He looks like a human and his anatomical structure is the same, but he's not human. He doesn't openly grieve and brood (very popular tropes these days) about the death of his race and all that. He never comes off as vulnerable, just strong. I think people have a hard time dealing with it and I don't think a lot of the more popular stories make Superman human enough for people to get behind him. I thought MoS did a good job with it, which helped me like and get more interested in Superman, as strange as that may sound to some. Superman has great stories where he represents an ideal or does big cool superhero stuff, but I think it's hard for some to grasp that when he's not presented as "human" enough.
I'm not trying to shit on Superman here and I'm sorry if I come off as ignorant. I'm sure there are stories that apply to this that I'm not aware of, but I do hope my point makes at least some sense and holds some weight.