O Instagram não permite links clicáveis no meio do post, e isso faz parecer que UTM não tem uso por aqui. Tem: cada ponto de entrada do Instagram que manda tráfego pro seu site precisa de um UTM diferente. Sem isso você não separa o clique que veio da bio do que veio do stories, e tudo cai no mesmo balaio de tráfego social no GA4.
A resposta curta: use utm_source=instagram em tudo, utm_medium=social no orgânico e utm_medium=cpc nos anúncios, e mude o utm_content pra marcar de onde veio (bio, stories, reels). O resto do artigo detalha cada caso e como deixar o link da bio limpo com um encurtador.
Não sabe quais parâmetros usar? O guia completo de parâmetros UTM explica o papel de cada um com exemplos práticos.
Os pontos de entrada do Instagram e seus UTMs
Diferente do Facebook, onde quase qualquer post pode ter link, no Instagram o tráfego orgânico para sites vem de poucos lugares. Cada um precisa de um UTM específico.
Bio link
O link na bio é o ponto de entrada mais comum para tráfego orgânico do Instagram. O UTM base:
utm_source=instagram&utm_medium=social&utm_campaign=bio-linkSe você usa um agregador de links (Linktree, Beacons, etc.), configure o UTM em cada link individual dentro do agregador, não no link do agregador em si. Assim você sabe qual botão dentro da página gerou o clique.
Obs.: a URL da bio com todos os UTMs fica longa e feia, algo como site.com/produto?utm_source=instagram&utm_medium=social&utm_campaign=bio-link. Encurtar com o castnx.link deixa a bio limpa (castnx.link/abc123) sem perder o rastreamento: cada clique é registrado e o redirect entrega a URL com os UTMs embutidos pro GA4. Como os parâmetros já vão gravados no destino, eles chegam mesmo quando o navegador interno do Instagram atrapalha o link original.
Stories com link (figurinha de link)
O antigo swipe-up exigia 10 mil seguidores e já foi aposentado. Hoje a figurinha de link (link sticker) está disponível pra qualquer conta, então todo story pode levar tráfego pro site. Dê a ele um UTM próprio pra separar do tráfego da bio:
utm_source=instagram&utm_medium=social&utm_campaign=nome-da-campanha&utm_content=storiesReels
Reels com link na legenda não têm clique direto — o usuário precisa ir ao perfil e clicar no bio link. Mas se você promove um Reel com link, use:
utm_source=instagram&utm_medium=social&utm_content=reelsInstagram Ads
Para anúncios pagos no Instagram, o medium muda para cpc e o source continua instagram:
utm_source=instagram&utm_medium=cpc&utm_campaign=nome-da-campanhaObs.: muita gente usa utm_source=facebook para Instagram Ads porque o gerenciamento é feito no Meta Ads Manager. Não faça isso. O source deve refletir onde o usuário viu o anúncio — Instagram. Se você usar facebook no source, vai contaminar a análise de canais no GA4.
A diferença entre tráfego orgânico e pago no Instagram
É exatamente o utm_medium que faz essa separação:
- Orgânico (bio, stories, reels):
utm_medium=social - Pago (Instagram Ads):
utm_medium=cpc
No GA4, o canal "Organic Social" agrupa sessões com medium=social, e o canal "Paid Social" agrupa sessões com medium=cpc vindo de redes sociais. Essa separação só acontece se os UTMs estiverem corretos.
Parâmetros dinâmicos nos Instagram Ads
Instagram Ads usa o mesmo sistema de parâmetros dinâmicos do Facebook Ads, porque os dois são gerenciados pelo Meta Ads Manager:
utm_source=instagram&utm_medium=cpc&utm_campaign={{campaign.name}}&utm_content={{ad.name}}Para campanhas que rodam em Facebook e Instagram ao mesmo tempo, você pode usar {{site_source_name}} no utm_source — esse parâmetro preenche automaticamente com fb ou ig dependendo de onde o anúncio foi exibido.
Obs.: {{site_source_name}} retorna ig, não instagram. Se você quiser o nome completo consistente com o resto dos seus UTMs, prefira criar conjuntos de anúncios separados por plataforma e usar source estático.
Gere e encurte seu UTM para Instagram agora
O UTM Builder tem o template do Instagram pré-configurado com utm_source=instagram e utm_medium=social. Você escolhe o template, adiciona o nome da campanha e o link sai pronto. Na sequência, encurte no castnx.link pra colar uma URL limpa na bio: o clique fica registrado e os UTMs chegam certinhos no GA4, sem a URL gigante espantando quem ia clicar.
FAQ
Por que o Instagram aparece como Direct no GA4 sem UTM?
O aplicativo do Instagram abre links em um browser interno (in-app browser) que, em muitos casos, não passa o referrer para o GA4. Ou seja: mesmo que o usuário tenha clicado no bio link, sem UTM o GA4 registra a sessão como Direct — como se o usuário tivesse digitado o endereço manualmente. O UTM é a única forma confiável de identificar esse tráfego.
Preciso de UTM diferente para cada story?
Depende do nível de granularidade que você precisa. Para separar stories de outros pontos de entrada, basta utm_content=stories. Para distinguir stories específicos entre si, use utm_content=stories-nome-do-conteudo ou numere os stories (stories-01, stories-02).
Instagram Ads e Facebook Ads podem ter o mesmo utm_campaign?
Podem, desde que você use sources diferentes (instagram e facebook). No GA4, as campanhas vão aparecer no mesmo relatório com sources separados, e você consegue comparar o desempenho das duas plataformas para a mesma campanha.
Vale a pena encurtar o link da bio?
Vale. A URL com todos os UTMs é longa e passa insegurança na bio. O castnx.link encurta pra algo como castnx.link/abc123, registra cada clique e no redirect entrega a URL com os UTMs embutidos pro GA4. Você ganha bio limpa, contagem de cliques e rastreamento que não depende do referrer do navegador interno do Instagram, já que os parâmetros viajam no destino gravado, não no link que a pessoa toca.
