It's just the nature of software version releases, how they are done, and what an updater may know that you don't (or what you know that the updater doesn't).
Quite often when you 'Check for Updates' within an app it will tell you that there are no updates available, even though they are there on the developers website.
That's because they 'throttle' the distribution of updates to users so as not to overload their servers.
Quite often an update will be available (if you know where to look) but that information not posted on the developers website for a day, or two, or even a week.
Software updating sites know where to look for those updates and so can offer them even before they have made it onto the developers website.
We see that one with CCleaner itself, certain known sites will have a new version available to download before it has been fully released on the CCleaner website itself.
(They do sometimes get caught out if a last minute change is made before the 'official' release).
As for versions already installed; it depends just wnat version the installed software says it is.
Sometime the version number stored internally within the app is at odds with the version number as it is given on the website/file.
For example one might say v18.1.0 while the other says v18.10, which is the 'latest' the eighteen one or the eighteen ten? (Of course they are <em>usually</em> the same but one has a dot missing, or one has a surplus dot)
Occasionally a developer may update the 32-bit version of an app to a different version number that the 64-bit version, or vice-versa.
That can also sometimes cause issues if they are usually the same number.
So as you say if you only want to update when the developer tells you to then don't use any software updater.