Custom query parameter conditions
Target visitors using your own URL parameters. You can check the current page, the first or latest occurrence, or any page still in their browsing history.
You can use a custom URL parameter to show visitors a message that fits the link they followed, then choose whether that context stays with them as they browse.
What it checks
Query Parameters → Parameter Name compares a named URL parameter with a value. The parameter name doesn't include ?, &, or =. Names are case-sensitive. Anything after # is a URL fragment, not a query parameter.
When to use it
Use this condition for your own parameters, such as an affiliate code. For the five standard marketing parameters, use UTM parameter conditions. They use the same occurrence options.
For paths, domains, page counts, and time windows, use Pages and visits conditions.
Options
Fields and starting values
| To choose… | Field | Starting value |
|---|---|---|
| Which parameter to check | Parameter Name, using the exact name | Blank |
| Which page to check | Occurrence, with the five options below | On most recent occurrence |
| How to compare the value | Operator, with the nine options below | Equals |
| What to compare it with | Comparison text | Blank |
Which occurrence to check
| Choose | Page used for comparison |
|---|---|
| On most recent occurrence | The latest recorded page containing this parameter, even if a newer page omits it. |
| On current page | The current page only. |
| On first occurrence | The earliest recorded page containing this parameter. |
| On first ever page hit | The first recorded page, whether or not it contains this parameter. |
| On any occurrence | Any retained page whose value passes the comparison. |
RightMessage finds the first and most recent occurrence separately for each parameter. Parameters in the same condition group don't have to come from the same landing URL.
An occurrence means that the parameter key exists. For example, affiliate= can become the most recent occurrence even though its value is empty.
How to compare it
The operators are Equals, Does not equal, Contains, Does not contain, Starts with, Ends with, Wildcard match, Is set, and Is not set.
Is set and Is not set don't take a comparison value. Other operators take text. Comparisons are case-sensitive. The text operator reference covers comma-separated alternatives and numeric-looking equality values.
Query matching accepts decoded text. RightMessage handles spaces written as + and percent-encoded text during comparison. It also handles previously encoded values in recorded history without repeatedly decoding values that are already decoded.
Examples
A visitor might arrive at WorkForge (opens in a new tab) through this link:
The parameter name is affiliate, and its value is example-partner.
The pictured rule uses On any occurrence to match a retained page with affiliate=example-partner. The parameter doesn't need to stay on the current URL.
Things to know
Missing and empty parameters
RightMessage chooses the occurrence before it runs the comparison.
- On the current or first recorded page, an absent key is compared as an empty value. Is not set can match it.
- For the first or most recent occurrence, no recorded page with that key means no match, including Is not set.
- A recorded
affiliate=value can match Is not set. The key exists, but its value is empty. - On any occurrence matches when at least one page passes. A negative operator can match a page without the parameter, even if another page contains the excluded value.
For example, On any occurrence → Does not equal with example-partner means at least one retained page has a different or missing value. It doesn't mean the visitor has never arrived through that partner.
How long the history lasts
A current-page rule stops matching a positive value when the visitor moves to a URL without it. First, most recent, and any-occurrence rules can keep context across pages and visits in the same browser.
The history comes from recorded pageviews. Where configured, stored attribution data can also supply first and latest occurrences.
These conditions have no duration field. On any occurrence checks retained history, not an unlimited server-side archive. Clearing browser data, unavailable storage, or removal of older history under storage pressure can change whether a rule matches. Another browser doesn't inherit this history just because it belongs to the same person.