The counter at any given moment in time will have different values on different replicas. It represents how caught up each of the members is on their shared sequence of operations. Once you have replicated a given operation, you've also updated your counter value to the counter value that the primary had when it did that operation. And so you're now consistent, but the primary may be ahead of that as well. Like there's never any absolute truth.