A very big mistake people make is presenting their friends with friendship gifts on their birthdays. Your friend's birthday is his/her day, not a day for you to celebrate friendship.
Always make the gift entirely about your friend. By this, we mean, don't get/make birthday cards that talk about friendship, don't buy similar things for you and your friend, or take your friend to a place where you want to go. Keeping that in mind, we can now move on to the presents.
Include all your memories in a scrapbook, in the form of poetry, photographs, songs, and some collective surprising testimonials. One of the best homemade presents, you can make the scrapbook a memory bank, which includes all the memories till date.
Invite all the friends you guys have in common and ask them to abscond till the party. Surprise your friend with the company of close ones, good food, and a heap of surprise presents. Make a plan to get your friend at the venue in advance.
Try to find out what exactly it is that your friend wants for this birthday, or something that he/she has been wanting for some time. For a even more special gift, the number of presents can be equal to the age of your friend.
If the expenses are a lot, you can ask some of your other friends to join in and contribute as well. This will be a unique gift; your friend will be euphoric. Also, you can keep the destination a surprise.
Now that you know these amazingly good birthday presents, you can decide which one you would want to give your friend. You can also, if you want to, combine all the gift ideas given here, into one big surprise.