A third step is to implement backwards compatibility for your rate limit headers, if possible. This means that you should try to keep the old headers working alongside the new ones, at least for a grace period, to give your clients enough time to adjust. For example, if you change the header name from X-Rate-Limit-Limit to RateLimit-Limit, you can still send both headers with the same value for a while, until you phase out the old one. Alternatively, if you change the header value from seconds to milliseconds, you can send both values with different units, such as X-Rate-Limit-Reset: 60 and X-Rate-Limit-Reset-Ms: 60000. This way, you can avoid breaking the existing functionality or logic of your clients.