If you increment a counter, flush the message, and then before the UTC timestamp has rolled into the next second, increment the same counter with the same tags (and flush again), only one of your two increments will show up in datadog. I think Datadog has some de-duplication / unique indexing that only tracks a unique metric per second. I think this library would need to keep in-memory up to 1 second of messages, to be able to track and send the right stats.