From what I have researched the resulting cost is not below 7%
If the exchange rate of USD is Rs.67/$ bank will sell you USD at Rs.70/$. Here itself we loose upto 5%. Most exchanges won't accept Wire transfer from India so we have to route the money through some transacting agency which would charge 2% for their service.
minimum percent, i have seen is 5-6% on localbitcoins as compare to Google rate
Current google rate - 77193 Rs.
Localbitcoins rate - 81350.00 INR to buy bitcoins via IMPS
So Basically - 77193*0.05 = 3860 rs here 0.05 is 5 Percent margin
and their is rate difference is about 4200 rs . Minimum rate you will get 6% From google rate This happens only due to Indian Bank charges.