Interne fragmentatie is een geheugenprobleem dat optreedt wanneer de allocator extra ruimte leeg laat binnen een toegewezen geheugenblok. Laten we bijvoorbeeld zeggen dat een allocator alleen geheugen in delen van 4 kan leveren bytes. Als een programma 29 bytes geheugen opvraagt, ontvangt het feitelijk een brok van 32 bytes. Omdat het programma slechts 29 van de 32 beschikbare bytes gebruikt, gaan de overtollige 3 bytes geheugen verloren.
Na verloop van tijd stapelen zich kleine stukjes ongebruikt geheugen op, waardoor grote hoeveelheden geheugen ontstaan ​​die de allocator niet kan gebruiken. De twee meest effectieve manieren om interne fragmentatie te voorkomen zijn het dynamisch toewijzen van geheugen of het gebruik van partities van verschillende grootte.