Duration of erection varies depending on your dosage, your body’s metabolism and other external factors. Sildenafil (Viagra) for ED (erectile dysfunction) lasts about four hours. Generic Cialis, known as Tadalafil, has the longest action of any available PDE5 inhibitor at 24 to 36 hours.