This is my second job at a mid-size company after my masters in USA. During the interview for the job, my current manager "verbally" told me that every year we will get hikes and bonuses, therefore, I should not worry about the career growth. Then he asked me whether I can stay at least 3 years in the company if I was offered a job. Although I have better offers (guaranteed bonus + hike every year) at that time, I like my current manager's approach (and also the work is very interesting), said yes and joined the company. It has been 18 months, so far I am very happy with my work and with the environment in our team.
However, although I got good annual performance review, I was offered just 1% as a hike and No bonus, though my company is doing well. Moreover, my friends in other places received 10% hike and some bonus. I am very disappointed with just 1% hike. Therefore, I have been interviewing with a few companies and recently got a good offer (higher designation + 20% hike on my current salary + RSUs + guaranteed bonus every year in written form). However, I really like the work I am doing with my current employer. How should I approach my manager now so that I will get a match with my current offer or good hike so that I can stay at my current employer? I don't want to sound like "threatening to leave the company if I was not offered hike". Moreover, is it ethical to leave now since I said yes for staying at least 3 years?