There are various reasons for this. The main one being some companies have more money and are able to set up a method where a computerized system approves rewards. Some companies are smaller company therefore they have to manually check every account at the time of redemption, manually put in the address and send it to a gift card supplier. And different gift card suppliers then have their own system of sending out gift cards, in which times do vary.
As above sometimes it's staffing issues.
Also could be for fraud detection purposes.