PCB of an M.2 module provides a 75-position edge connector; depending on the type of module, certain pin positions are removed to present one or more keying notches. Host-side M.2 connectors (sockets) may populate one or more mating key positions, determining the type of modules accepted by the host; as of April 2014, host-side connectors are available with only one mating key position populated (either B or M). Furthermore, M.2 sockets keyed to support SATA or two PCI Express lanes (PCIe ×2) are referred to as "socket 2 configuration" or "socket 2", while the sockets keyed for four PCI Express lanes (PCIe ×4) are referred to as "socket 3 configuration" or "socket 3".
For example, M.2 modules with two notches in B and M positions use up to two PCI Express lanes and provide broader compatibility at the same time, while the M.2 modules with only one notch in the M position use up to four PCI Express lanes; both examples also support SATA storage devices. Similar keying applies to M.2 modules that utilize provided USB 3.0 connectivity

Life will beat you into submission.