I think that people do not sing because...
- They do not know the words. Although this is a sad commentary in a nation where the song is sung at every professional and amateur sporting event.
- They think that they cannot sing. Again, this is a real possibility, but in a stadium of hundreds (thousands) of people one person's voice is virtually unnoticeable.
- The tune is hard to sing. There is no argument here. There are very few tunes more difficult to sing in the popular culture.
- Some people have an emotional response to the song and the words. Singing may be too difficult for them to manage.
Any of these are possibilities, but I think the truth of the situation is more simple. People do not like to sing the National Anthem, or any song for that matter, because they are not used to singing in public- maybe they never sing at all. In fact, I think that there are only two places where most people are given the opportunity to sing in public: sporting events, and church.
Since most people do not attend church, even at Christmas and Easter, the football game is the only time they are expected to sing. When the time comes, they freeze. They may sing in the shower or on their morning commute, but unless they spend time at Gustav's Club on karaoke night, they do not sing where others can hear them.
So, I say that we should all sing, all the time. Sing wherever you are. Do not be afraid or embarrassed. The people around you cannot sing any better than you anyway. Sing aloud! Sing now! Sing!