What is the cause of SSD capacity difference in Intel vs M1 Macs?

I recently bought an 14 inch MacBook Pro, which has 512GB SSD storage. When I check the capacity of the SSD in MacOS, it is reported as 494,38 GB in system report (494.384.795.648 bytes), which is about 5,6 GB less than what it should be (500 GB).

My previous MacBook Pro from year 2015, has an intel processor and 256 GB of SSD storage, and its capacity is reported as 250,79 GB (250.790.436.864 bytes).

Thinking that this 5,6 GB could be a difference specific to M1 Macs, I searched the internet and also found out that 256 GB SSDs of M1 devices are reported as 245,11 GB, which supports my hypothesis.

So, what is Apple using this 5,6 GB of SSD storage in M1 Macs? Did they start to do something like SSD provisioning? Caching to speed up things and etc with M1 Macs?

-- Later edit: As requested, I have added output of more detailed commands below. It looks like M1 Pro machine has an additional 5.4 GB recovery partition. which explains the difference. But now I wonder, why does my Intel machine does not have a recovery partition? The Intel machine had Os Mojave on it when I got it, I upgraded the OS to first Catalina, then Big Sur from inside MacOS as usual. I don't think I have deleted any existing recovery partition.

Output of command: "system_profiler SPNVMeDataType" on 512 GB M1 Pro machine:

NVMExpress:

Apple SSD Controller:

    APPLE SSD AP0512R:

      Capacity: 500,28 GB (500.277.792.768 bytes)
      TRIM Support: Yes
      Model: APPLE SSD AP0512R
      Revision: 386.40.1
      Serial Number: 0ba0160a2214342e
      Detachable Drive: No
      BSD Name: disk0
      Partition Map Type: GPT (GUID Partition Table)
      Removable Media: No
      S.M.A.R.T. status: Verified
      Volumes:
        disk0s1:
          Capacity: 524,3 MB (524.288.000 bytes)
          BSD Name: disk0s1
          Content: Apple_APFS_ISC
        disk0s2:
          Capacity: 494,38 GB (494.384.795.648 bytes)
          BSD Name: disk0s2
          Content: Apple_APFS
        disk0s3:
          Capacity: 5,37 GB (5.368.664.064 bytes)
          BSD Name: disk0s3
          Content: Apple_APFS_Recovery

output of command: "system_profiler SPNVMeDataType" on 256 GB Intel 2015 MacBook Pro:

  • this command does not give any output on this machine but instead, I can see the following information in the SATA section: of full system_profiler command output:

    Apple SSD Controller:

    Vendor: Apple
    Product: SSD Controller
    Physical Interconnect: PCI
    Link Width: x4
    Link Speed: 5.0 GT/s
    Description: AHCI Version 1.30 Supported
    
      APPLE SSD SM0256G:
    
        Capacity: 251 GB (251.000.193.024 bytes)
        Model: APPLE SSD SM0256G                       
        Revision: BXW1PA0Q
        Serial Number: S29CNYCG464909      
        Native Command Queuing: Yes
        Queue Depth: 32
        Removable Media: No
        Detachable Drive: No
        BSD Name: disk0
        Medium Type: Solid State
        TRIM Support: Yes
        Partition Map Type: GPT (GUID Partition Table)
        S.M.A.R.T. status: Verified
        Volumes:
          EFI:
            Capacity: 209,7 MB (209.715.200 bytes)
            File System: MS-DOS FAT32
            BSD Name: disk0s1
            Content: EFI
            Volume UUID: 0E239BC6-F960-3107-89CF-1C97F78BB46B
          disk0s2:
            Capacity: 250,79 GB (250.790.436.864 bytes)
            BSD Name: disk0s2
            Content: Apple_APFS
    

Output of command: "diskutil list" on 512 GB M1 Pro machine:

/dev/disk0 (internal):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                         500.3 GB   disk0
   1:             Apple_APFS_ISC ⁨⁩                        524.3 MB   disk0s1
   2:                 Apple_APFS ⁨Container disk3⁩         494.4 GB   disk0s2
   3:        Apple_APFS_Recovery ⁨⁩                        5.4 GB     disk0s3

/dev/disk3 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +494.4 GB   disk3
                                 Physical Store disk0s2
   1:                APFS Volume ⁨Macintosh HD⁩            15.7 GB    disk3s1
   2:              APFS Snapshot ⁨com.apple.os.update-...⁩ 15.7 GB    disk3s1s1
   3:                APFS Volume ⁨Preboot⁩                 316.2 MB   disk3s2
   4:                APFS Volume ⁨Recovery⁩                851.2 MB   disk3s3
   5:                APFS Volume ⁨Data⁩                    114.9 GB   disk3s5
   6:                APFS Volume ⁨VM⁩                      1.1 GB     disk3s6

Output of command: "diskutil list" on 256 GB Intel 2015 MacBook Pro:

/dev/disk0 (internal, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *251.0 GB   disk0
   1:                        EFI ⁨EFI⁩                     209.7 MB   disk0s1
   2:                 Apple_APFS ⁨Container disk1⁩         250.8 GB   disk0s2

/dev/disk1 (synthesized):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      APFS Container Scheme -                      +250.8 GB   disk1
                                 Physical Store disk0s2
   1:                APFS Volume ⁨SSD - Data⁩              154.4 GB   disk1s1
   2:                APFS Volume ⁨Preboot⁩                 443.8 MB   disk1s2
   3:                APFS Volume ⁨Recovery⁩                623.4 MB   disk1s3
   4:                APFS Volume ⁨VM⁩                      3.2 GB     disk1s4
   5:                APFS Volume ⁨SSD⁩                     15.3 GB    disk1s5
   6:              APFS Snapshot ⁨com.apple.os.update-...⁩ 15.3 GB    disk1s5s1

That amount of usable space difference you see reported is more likely caused by OS differences than hardware.

You can get much better results looking in the details of disk utility or diskutil or system_profiler on both physical disks. Your listing of diskutil list disk0 Is where to focus.

Lastly, note that 256 GB (gigabytes) is a software / decimal measure corresponding to 238.4 GiB (gibibytes) which is the hardware / binary measure.

SSD work differently than magnetic media in that the controller always has more storage built than the raw capacity since rather than marking blocks as bad, they ship over provisioned. This allows the storage controller to substitute groups of storage cells to balance wear leveling (reliability) needs with speed, durability and power consumption trade offs.

The main difference you should pay attention to is which storage controller is in play. Intel can have traditional storage or an Apple T2 chip. The Apple Silicon hardware uses a controller built into the SOC.