Decide how long to retry based on who initiated the communication. For human users, UX beats durability — retry one to a few times quickly, then surface an error so they can retry manually. For machine-to-machine traffic, retry for days or weeks so transient outages that happen during weekends or vacations heal automatically once a fix ships.