Available on Pro, Growth, and Max plans. Managing rules requires the Owner or Admin role.
Tracking parameters (UTMs) tell your analytics where a scan or click came from. When several people create QR codes and shortlinks, those values drift: Newsletter, newsletter, and news-letter all end up as separate rows in your reports. SnapGlyph’s parameter governance lets an admin define an approved library of values and rules, then choose how strictly to apply them. This article is for organization admins who set the rules, and for anyone who builds tracked links and wants to know what the warnings and blocks mean.
How It Fits Together
The Parameters feature set has two tabs: Campaigns (the parameter sets you attach to links) and Values, which this article covers. A value set, labeled Parameter value preset in the app, is a named library of approved values plus the rules for each tracking field. It is a separate layer from a Campaign: a value set governs which values are allowed, while a campaign is a saved group you apply. Every organization has one default set called “Org default”. It comes pre-loaded with the five standard UTM fields:
utm_sourceutm_mediumutm_campaignutm_termutm_content
Each field has its own rules and its own list of approved values. The rules you can set per field are:
- Field type: Standard or Passthrough. Passthrough fields keep ad-platform macros (like
{{campaign.id}}) verbatim. Only the “required” and “max length” rules apply to them; they are never reformatted. - Required: the field must have a value, or the link is flagged.
- Approved values only: turns the field into a pick-list. Free text is rejected once enforcement is set to Hard.
- Force lowercase: converts the value to lowercase.
- Replace spaces with: swaps spaces for a character you choose, for example
summer salebecomessummer-sale. - Max length: caps the number of characters.
- Forbidden characters (regex): flags values that match a pattern you supply.
Force lowercase and space replacement are canonicalization rules: they describe the one true form of a value. SnapGlyph stores approved values in that same canonical form, so “add a value” and “is this value approved” never disagree.
Who Can Do What
| Capability | Plan required |
|---|---|
| Build a link with UTM parameters | All plans |
| Manage value sets, fields, and approved values | Pro and above, plus the Owner or Admin role |
| Turn on Soft or Hard enforcement | Pro and above, plus the Owner or Admin role |
| Unlimited value sets | Max (Pro allows up to 3) |
Managing value sets and enforcement requires both the Pro (or Max) plan and the Owner or Admin role on the organization. Regular members can still build tracked links and request new values, but they cannot change the rules. Starter and Free plans do not have parameter governance.
Build a Value Set
You manage value sets from the Parameters page in the main navigation. Open the Values tab.
- Go to Parameters → Values. The default set loads with the five standard UTM fields already in place.
- To add approved values to a field, type a value into its Add a value… box and press Enter or click Add. Each approved value appears as a chip. Remove one with the × on its chip.
- To set rules for a field, click Rules on that field’s card. From the popover you can change the field type, toggle required / approved-values-only / force-lowercase, set a max length, a space replacement, a forbidden-characters pattern, and an instruction for teammates that shows as a hint in the builder. A Live example shows how a sample value will be reformatted before you save.
- To add a field beyond the five standard UTMs, click Add field at the bottom of the list and give it a parameter key (letters, numbers, and underscores) and a display label. Custom fields can be deleted; the five standard ones cannot.
Add a Lot of Values at Once
If you already have a list of approved values, you don’t have to type them one at a time. On a field’s card, click Paste list. Paste your values one per line or comma-separated (up to 500 at a time). SnapGlyph canonicalizes each one, drops blanks and duplicates, and reports how many it added versus skipped.
More Than One Value Set
On the Max plan you can create additional value sets with New set and switch between them with the value-set picker. Each new set starts with the five standard UTM fields and its own approved values. Only the default set drives enforcement and the cleanup report.
Roll Out Enforcement: Off → Soft → Hard
Enforcement controls how strictly the rules are applied. It lives in Settings → Company → Permissions, in the Parameters section, under Parameter enforcement. It applies to your organization’s default value set.
The control is a three-way switch:
- Off: Parameters pass through unchanged. Nothing is checked. This is the default.
- Soft: Builders see warnings for unapproved values, but nothing is blocked and nothing is rewritten. Use this to find problems before you turn on blocking.
- Hard: Unapproved values are blocked on every write path, and values are normalized to their approved (canonical) form. This applies everywhere links are created or edited, including the API, the browser extension, and bulk tools, so it can’t be bypassed.
When you switch to Hard, SnapGlyph first checks how many of your existing links would not meet the current rules and shows that count in a confirmation dialog. Existing links are never rewritten when you turn enforcement on; the count is only there so you know what to clean up later. Confirm by clicking Enforce.
The recommended path is Off → Soft (watch the warnings, fix or approve the values people actually use) → Hard once the warnings have settled down.
Bulk Authoring Tools
Governance applies on the server no matter how a link is created, so these bulk tools all respect your enforcement state.
Clone & stamp. When you create QR codes in bulk, the empty state offers Upload CSV or Clone & stamp. Clone & stamp takes one base name and URL, lets you pick a single UTM field to vary, and a list of values to stamp. It generates one editable QR code per value. Existing UTM params on the base URL are carried onto every generated code.
Apply a parameter to a batch. On a batch’s detail page, Apply parameter overwrites one UTM field across every QR code in that batch. Pick the field and the new value, then Preview changes to see an old → new diff for each code, with any blocked rows flagged. The apply button only appears when no rows are blocked; under Hard enforcement, if any row would use an unapproved value, the whole apply is rejected so the batch stays consistent.
The Non-Conformance (Cleanup) Report
After you have rules in place, you’ll often have older links that predate them. The cleanup report finds those.
Open Parameters → Values and expand Clean up existing values (click Review). SnapGlyph scans your existing QR codes, shortlinks, and campaigns for tracking values that aren’t in your approved library, then groups them by field with a count of how often each variant appears. For each variant you have three choices:
- Adopt: add the variant to that field’s approved library as-is.
- Map to…: pick an approved value, and SnapGlyph rewrites every QR code, shortlink, and campaign using the old variant to the approved one.
- Ignore: dismiss it from the list for now (this doesn’t change anything).
The scan is bounded, so on a large account you may see a note that it’s showing a sample. You can also Export CSV from the top of the Values tab to get a field_key, field_label, value dump of your entire approved library.
What a Builder Sees When a Value Is Blocked
Under Soft enforcement, the Tracking Parameters modal shows a “Will be adjusted” note (for example, Summer Sale → summer-sale) and warnings for unapproved values, but you can still save. You can click Apply on a suggested fix, or Apply all, to accept the canonical form.
Under Hard enforcement, fields set to “approved values only” become a pick-list. If you type a value that isn’t approved, the modal flags it (“Not an approved value”) and the Save button is disabled until you resolve it. If you’re an admin, you can add the value to the library on the spot; if you’re a member, you can Request the value, and an admin reviews it from the Values tab’s request queue.
If a blocked value reaches the server anyway (for example through the API or a bulk job), the write is rejected with an HTTP 400 and the error code PARAMETER_VALUE_NOT_APPROVED, along with the list of offending values. The message reads: “One or more tracking parameter values are not approved by your organization.”
FAQ
Does turning on Hard enforcement rewrite my existing links? No. Existing links are never touched when you change the enforcement state. Hard enforcement only applies to links you create or edit afterward. Use the cleanup report to fix older links on your own schedule.
A teammate needs a value that isn’t approved. What do they do? In the Tracking Parameters modal they can Request the value. It goes into the request queue on the Values tab, where an Owner or Admin can approve it (which adds it to the library) or deny it.
What’s the difference between a Standard and a Passthrough field? Standard fields are governed: they can be reformatted (lowercase, space replacement) and restricted to approved values. Passthrough fields keep their value exactly as entered so ad-platform macros survive, with only “required” and “max length” applying.
Why are my values being lowercased or having spaces replaced? A field has a “Force lowercase” or “Replace spaces with” rule set. Those are canonicalization rules. Under Soft you’ll be warned before they apply; under Hard the approved form is saved. Check the field’s Rules to change this.
Can I have different rules for different teams or brands? On the Max plan you can create multiple value sets. Note that enforcement and the cleanup report currently operate on your organization’s default value set.