utm

package
v0.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 7, 2026 License: MIT Imports: 4 Imported by: 0

Documentation

Overview

Package utm audits UTM campaign tagging on a page's outbound links: partial tagging, empty or duplicated parameters, inconsistent key casing, and a per-page rollup. It is the first of the SEA (Search Engine Advertising) analyzers and operates purely on the links the crawler already extracted — it never fetches.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Analyzer

type Analyzer struct {
	// contains filtered or unexported fields
}

Analyzer inspects outbound links for UTM campaign tagging.

func New

func New(opts ...Option) *Analyzer

New returns a UTM analyzer. External-link tagging-quality warnings are suppressed by default; pass WithIgnoreExternalTagging(false) to include them.

func (Analyzer) Analyze

func (a Analyzer) Analyze(_ context.Context, result *crawler.Result) []analyze.Issue

func (Analyzer) Description

func (Analyzer) Description() string

func (Analyzer) Name

func (Analyzer) Name() string

type Option added in v0.7.0

type Option func(*Analyzer)

Option configures the analyzer.

func WithIgnoreExternalTagging added in v0.7.0

func WithIgnoreExternalTagging(on bool) Option

WithIgnoreExternalTagging controls whether the 4 per-link tagging-quality warnings (utm-partial-tagging, utm-empty-value, utm-duplicate-param, utm-inconsistent-casing) are suppressed for links leaving the crawled domain — the site owner doesn't control tagging on links it doesn't own (e.g. a third-party widget's own UTM-tagged badge link). On by default.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL