diff --git a/fabric-registry-sync-v0/src/main/java/net/fabricmc/fabric/impl/registry/sync/RegistrySyncManager.java b/fabric-registry-sync-v0/src/main/java/net/fabricmc/fabric/impl/registry/sync/RegistrySyncManager.java
index 778d80496..ed9a37cc8 100644
--- a/fabric-registry-sync-v0/src/main/java/net/fabricmc/fabric/impl/registry/sync/RegistrySyncManager.java
+++ b/fabric-registry-sync-v0/src/main/java/net/fabricmc/fabric/impl/registry/sync/RegistrySyncManager.java
@@ -25,9 +25,11 @@ import java.util.concurrent.ExecutionException;
 import java.util.concurrent.TimeUnit;
 import java.util.concurrent.TimeoutException;
 import java.util.function.Consumer;
+import java.util.zip.Deflater;
 
 import com.google.common.base.Joiner;
 import com.google.common.collect.Sets;
+import io.netty.buffer.ByteBuf;
 import io.netty.buffer.Unpooled;
 import it.unimi.dsi.fastutil.ints.IntOpenHashSet;
 import it.unimi.dsi.fastutil.ints.IntSet;
@@ -90,6 +92,38 @@ public final class RegistrySyncManager {
 	}
 
 	public static void receivePacket(ThreadExecutor<?> executor, RegistrySyncPacket packet, PacketByteBuf buf, boolean accept, Consumer<Exception> errorHandler) {
+		if (DEBUG) {
+			LOGGER.info("{} raw size: {}", packet.getClass().getSimpleName(), buf.readableBytes());
+
+			// see PacketDeflater
+			final byte[] deflateBuffer = new byte[8192];
+			ByteBuf byteBuf = buf.copy();
+			Deflater deflater = new Deflater();
+
+			int i = byteBuf.readableBytes();
+			PacketByteBuf packetByteBuf = new PacketByteBuf(Unpooled.buffer());
+
+			if (i < 256) {
+				packetByteBuf.writeVarInt(0);
+				packetByteBuf.writeBytes(byteBuf);
+			} else {
+				byte[] bs = new byte[i];
+				byteBuf.readBytes(bs);
+				packetByteBuf.writeVarInt(bs.length);
+				deflater.setInput(bs, 0, i);
+				deflater.finish();
+
+				while (!deflater.finished()) {
+					int j = deflater.deflate(deflateBuffer);
+					packetByteBuf.writeBytes(deflateBuffer, 0, j);
+				}
+
+				deflater.reset();
+			}
+
+			LOGGER.info("{} deflated size: {}", packet.getClass().getSimpleName(), packetByteBuf.readableBytes());
+		}
+
 		RegistryMap map = packet.readBuffer(buf);
 
 		if (accept) {