The duration of action of heroin is about three to five hours. Heroin has a quick onset of action (within minutes), bringing on an intense pleasure lasting a few minutes. This rush is followed by analgesia lasting three to four hours and sedation that lasts for about an hour.