Error-correction budget
QR codes reserve a fixed share of their codewords for error repair, at four levels: L, M, Q and H - roughly 7%, 15%, 25% and 30% of codewords. The tool encodes your text and then spends part of that correction budget on the logo. Higher levels squeeze data capacity - a long URL at level H can force a larger version - but they are what make the logo possible.