It depends on how you measure size - the actual reported file size should be the same, but the space the file covers may vary with compression (e.g. with ZFS) or even, when the original file was sparse, if the filesystem is actually the same on both source and target: Rsync detects holes and does not transfer them, thus the resulting target file may take up less space.