Mix is too bright
When mixing, you are always eager to make the sound a bit brighter. Boosting high frequencies can definitely do a mix good, but you should not overdo. The human hearing is very sensitive to frequencies between 2 kHz and 5 kHz, and there is always a temptation to increase this range to add transparency to instruments. Overdoing threatens with a very harsh and metal sound.
How to avoid it:
You should make compromises by equalizing. If you want a certain element to be distinguished in a track, you should just give it more space while working with other instruments. Automation of an equalizer can really help if you want a certain instrument to be distinguished during a specified moment of a song. Compression can help if the sound of percussion is very harsh (experiments with a fast attack). Plugins for work with transients will also help to take away sharpness of sound. A good mastering engineer will always say to you that it is all along better to remove it than to add.
Mix is too gritty or too flat
The surfeit of low frequencies can threaten with issues at the stage of both mixing songs online.
How to avoid it:
First, you should distinguish instruments which need low frequencies (kick drum, bass). Then you should set a high-pass filter on all the other tracks to take away unnecessary low frequencies. It will clear space for the instruments which really need low frequencies. After such instruments are specified, give separate space for them in a track. Be surgically careful while cutting bottom ends as their lack on vocal or on the main instrument can deprive it of life. Moreover, by cutting sub-bass (30 Hz and lower) you can give extra space for bass. Experiments are the reply to the solution to such kind of issues. In the course of time you will develop your own technique to fight against them.