first off, i think iMessage is one of the best features ever for the iPhone as i'm able to messages to my friends and family in the US without paying stupid $0.50 per text message to talk to him (i avoided that by using liveprofile or whatsapp, but a native app is always nice!) however, here's my issue. i had to turn off "send as SMS when iMessage is unavailable" because i don't want to be paying $0.50 for every time he's NOT available. it doesn't tell me whether i can send the message or not, it just sends it as a text AFTER the iMessage doesn't go through. this leads to another issue with my friends here in Canada. iMessage is enabled but for whatever reason they don't have a wifi/data, then the message won't go through! what does that do? well it sits in the 'cloud' and gets delivered to them once they have any data signal. all in all, we should have a few options here: 1. separate app for iMessage 2. ability to turn iMessage OFF for specific contacts because i have a few friends who use iPhone's without data. 3. real time availability for iMessage, when I open the contact window it automatically knows right away whether he's available to receive an iMessage. i shouldn't have to wait until i send the message because if i send an iMessage and have "send as text enabled" (and this message is outbound to the US), then i'll incur fees that i refuse to pay to these billion dollar companies. 4. hold the home button down and choose whether or not to send as a text or iMessage. have the phone remember the toggle set for that contact. 5. how bout an alert before my iPhone decides to send out a text message instead #5 is the most reasonable solution to me though. just be $0.02. no pun intended.