--- a/net/minecraft/world/entity/npc/CatSpawner.java
+++ b/net/minecraft/world/entity/npc/CatSpawner.java
@@ -68,12 +_,12 @@
     private void spawnCat(BlockPos pos, ServerLevel level, boolean persistent) {
         Cat cat = EntityType.CAT.create(level, EntitySpawnReason.NATURAL);
         if (cat != null) {
+            cat.snapTo(pos, 0.0F, 0.0F); // Paper - move up - Fix MC-147659
             cat.finalizeSpawn(level, level.getCurrentDifficultyAt(pos), EntitySpawnReason.NATURAL, null);
             if (persistent) {
                 cat.setPersistenceRequired();
             }
 
-            cat.snapTo(pos, 0.0F, 0.0F);
             level.addFreshEntityWithPassengers(cat);
         }
     }
