Pular para o conteúdo
🛠️ToolsShed

Construtor UTM

Crie URLs com parâmetros UTM para rastreamento de campanhas do Google Analytics.

Predefinições Rápidas

UTM URL

https://example.com/

Sobre esta ferramenta

Parâmetros UTM são a base da análise de marketing digital. Esses códigos especiais anexados às URLs permitem rastrear exatamente de onde seu tráfego vem—seja de uma campanha em mídia social, boletim por email ou anúncio pago. Quando implementadas corretamente, as tags UTM transformam dados de tráfego bruto em informações acionáveis que mostram quais campanhas atraem os visitantes e conversões mais valiosos.

Construir links UTM manualmente é tedioso e propenso a erros. Esta ferramenta simplifica o processo permitindo inserir sua URL base e preencher apenas os campos necessários: fonte (de onde vem o tráfego), meio (tipo de canal), campanha (o que você está promovendo) e opcionalmente termo (palavras-chave para busca paga) e conteúdo (para diferenciar múltiplos links em uma campanha). Um clique gera uma URL rastreada adequadamente formatada pronta para compartilhar em qualquer lugar—sem necessidade de código ou sintaxe especial.

Perguntas Frequentes

Implementação de Código

from urllib.parse import urlencode, urlparse, parse_qs, urlunparse

def build_utm_url(base_url: str, source: str, medium: str, campaign: str,
                  term: str = "", content: str = "") -> str:
    """Append UTM parameters to a URL, preserving existing query params."""
    parsed = urlparse(base_url)
    existing_params = parse_qs(parsed.query, keep_blank_values=True)

    utm_params = {
        "utm_source":   source,
        "utm_medium":   medium,
        "utm_campaign": campaign,
    }
    if term:    utm_params["utm_term"]    = term
    if content: utm_params["utm_content"] = content

    # Merge (UTM params override existing ones with the same name)
    merged = {k: v[0] for k, v in existing_params.items()}
    merged.update(utm_params)

    new_query = urlencode(merged)
    return urlunparse(parsed._replace(query=new_query))

def parse_utm_url(url: str) -> dict:
    """Extract UTM parameters from a URL."""
    query = parse_qs(urlparse(url).query)
    keys = ["utm_source", "utm_medium", "utm_campaign", "utm_term", "utm_content"]
    return {k: query[k][0] for k in keys if k in query}

# Build a URL
url = build_utm_url(
    base_url  = "https://example.com/landing",
    source    = "newsletter",
    medium    = "email",
    campaign  = "spring-sale-2025",
    content   = "header-cta",
)
print("UTM URL:", url)

# Parse it back
print("Params: ", parse_utm_url(url))

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.