O username (o @usuario) é o identificador visível e pode ser trocado pelo dono da conta a qualquer momento. O ID numérico interno nunca muda, mesmo que o username seja alterado várias vezes.

Por que isso importa em coleta de dados recorrente

Se o seu sistema salva dados usando o username como chave, e o perfil monitorado troca de nome, seu histórico "quebra" — parece um perfil novo. Usar o ID interno como chave primária evita esse problema.

Na prática, na maioria dos endpoints

Os endpoints do ScrapeGram aceitam consulta por username diretamente — mais simples pro dia a dia — mas a resposta de perfil sempre inclui o ID interno, que vale a pena salvar junto se você monitora o mesmo conjunto de perfis ao longo do tempo.

Veja mais sobre esse tipo de instabilidade no artigo como lidar com perfis que mudam de username com frequência.