This is an expected behavior if you have, "Send Remove On Identity Change" enabled on your Kinesis Firehose config.
When this is enabled, whenever identities are changed for a member of the audience, that member is dropped and then re-added with the new identities and a new add and drop message with the same timestamp will be created for both.
Unchecking this option will stop this from happening.
To learn more, please visit our docs.