Lewati ke konten
🛠️ToolsShed

Pembuat UTM

Buat URL berparameter UTM untuk pelacakan kampanye Google Analytics.

Preset Cepat

UTM URL

https://example.com/

Tentang alat ini

Parameter UTM adalah fondasi analitik pemasaran digital. Kode-kode khusus yang ditambahkan ke URL ini memungkinkan Anda melacak dengan tepat dari mana lalu lintas Anda berasal—baik dari kampanye media sosial, buletin email, atau iklan berbayar. Ketika diimplementasikan dengan benar, tag UTM mengubah data lalu lintas mentah menjadi wawasan yang dapat ditindaklanjuti yang menunjukkan kampanye mana yang menarik pengunjung dan konversi paling berharga.

Membangun tautan UTM secara manual membosankan dan rawan kesalahan. Alat ini menyederhanakan prosesnya dengan memungkinkan Anda memasukkan URL dasar dan mengisi hanya bidang yang Anda butuhkan: sumber (dari mana lalu lintas berasal), medium (jenis saluran), kampanye (apa yang Anda promosikan) dan secara opsional istilah (kata kunci untuk pencarian berbayar) dan konten (untuk membedakan beberapa tautan dalam satu kampanye). Satu klik menghasilkan URL terlacak yang diformat dengan benar siap dibagikan di mana saja—tidak perlu kode atau sintaks khusus.

Pertanyaan yang Sering Diajukan

Implementasi Kode

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.