Can URL parameters be captured without a question mark delimiter?
Summary
What email marketers say8Marketer opinions
Email marketer from Developer Forum user explains that some browsers might not correctly handle non-standard URL parameter delimiters. These browser issues can result in loss of data.
Email marketer from Email Geeks shares that Doubleclick uses `;` to separate items instead of `&`. They clarify that anything before the first `#` should reach the server, but nothing following it.
Email marketer from Marketing Insights Blog answers that while technically possible, using a question mark is a widely accepted standard for including parameters to a url. Not following this is poor practice and not recommended.
Email marketer from UX Site user shares that using non-standard url parameter syntax decreases usability as it is not what users expect and can cause confusion with unexpected url structures.
Email marketer from Reddit shares that while technically possible to use URLs without `?` for parameters, it's not SEO-friendly. Search engines expect the standard format, and deviating from it can negatively impact crawling and indexing.
Email marketer from Quora shares that if you're not using the `?` delimiter, you need to ensure your analytics tools are configured to properly capture and interpret the parameters. Otherwise, you might lose valuable tracking data.
Email marketer from Stack Overflow user responds that while the `?` is conventional, a server can be programmed to parse URLs in almost any way imaginable. They share that you could use other characters or even rely on the order of the segments, though it's not recommended for maintainability or SEO.
Email marketer from Webmaster Forum answers that while a question mark is the standard, it depends on the server configuration. Some servers might be set up to use other delimiters, but it's not universally supported and could cause issues with certain browsers or tools.
What the experts say3Expert opinions
Expert from Email Geeks responds clarifying that the web server could be configured to accept something other than `?` or nothing at all as a delimiter. They suggest Doubleclick might be doing it this way on purpose, but the reason is unclear.
Expert from Word to the Wise responds that using non-standard delimiters for URL parameters can cause issues with tracking and deliverability, especially if ESPs or analytics platforms aren't configured to handle them. She recommends sticking to standard practices for better compatibility.
Expert from Email Geeks explains that the web server owner can define whatever delimiters they want, so using something other than `?` is acceptable. They mention doing one-off stuff where the website's 404 handler figures out the response, but how it affects third-party analytics is unclear.
What the documentation says6Technical articles
Documentation from ietf.org explains that the question mark (`?`) separates the URI from the query string. The query string consists of name-value pairs, and while the question mark is the standard delimiter, servers can be configured to handle other delimiters.
Documentation from Express.js explains that Express.js allows for defining routes with parameters directly in the URL path, without using the `?` delimiter. These parameters can be accessed within the route handler.
Documentation from Apache.org explains that using rewrite rules, web servers like Apache can be configured to accept different delimiters for URL parameters. You can define rules that parse URLs without a question mark, using other characters or patterns to identify parameters.
Documentation from Nginx.org explains that using Nginx's configuration, you can define custom regular expressions to parse URLs and extract parameters, even if they don't follow the standard `?` and `&` format. This allows for flexible URL structures tailored to specific application needs.
Documentation from Microsoft.com explains that ASP.NET routing allows you to define URL patterns that don't necessarily follow the standard query string format. You can map URLs to specific actions without relying on the `?` delimiter.
Documentation from Node.js explains that the `url` module provides functions for parsing URLs, but it expects the standard format with a `?` delimiter. For non-standard URLs, you might need to use custom parsing logic.