This is a hard question to answer with general remarks so in this response I'll share what has prompted me to leave jobs that I have held in the past.
- Consistent high performance for two years or more without a resulting promotion.
- My mentor that brought me into the company was fired (with much animosity) shortly after I had taken the job. I requested and was granted a severance package.
- A change in management resulted in reporting to someone that I did not respect.
- Poached by a head hunter for a much more lucrative and challenging position. Although still successful I was bored and needed to move to grow.
- Relocation to an area to be near family.
As you can see not once did I leave a job for more money although I would not have left a position until I found a position that offered a significant increase in income and responsibility. I took only one lateral move and that was to move closer to family when my children were young.
If you do decide to leave here's some advice. Do not accept a counter offer. They know you are discontent and it will make future advancement difficult. Do not tell anyone that you are looking. I once shared this confidence with a coworker that reported it to our manager. The irony was I was not ready to leave at that time. I am of the mind that you start looking for another job the day you start a job. Be it either within or outside of your firm. If you are not ready to leave you do this by keeping a network of potential employment decision makers and headhunters close at hand.
Hope this helps!