1. Your song communicates what you are trying to say. Unless you will literally be the only one to ever hear your song, the song will be “better” to the extent that it communicates your intent most clearly. Choose your chords and notes wisely and be even more careful about the words you're choosing. When your song is being played for a listener, most probably you wouldn't be there sitting with your listener and explain for them on what you were trying to write about. So, make it self-explanatory.
2. Your song makes a connection with people. It somehow connects to people’s hearts and minds. If the listener “buys in” to your song, then it’s a better song than one that people don’t connect to. I had seen many writers’ saying "I only write for my heart". If you belong to that group, then there is no need to even read this article!! But if you are reading this, it means you're writing for more than just yourself. Then why not to make your songs better by writing something that everyone (or at least a majority) can feel connected to?
3. Your song elicits a response in the listener. It makes them want to laugh, dance, cry, etc. They should feel SOMETHING when they hear your song. Songs that make people respond are better songs.
4. Your song gets stuck in people’s heads. Songs that are better songs stay with us. The combination of words, rhyme, melody and rhythm gets in our brains and won’t leave. That’s a better song than one you can’t remember! Check your songs out. Sometimes a small re-write addressing one or more of those issues can make all the difference in the world