Response metadata

Attach optional metadata to hosted and embedded survey responses with URL parameters.

Last reviewed

Response metadata

Use response metadata when you want to preserve lightweight context with a survey submission, without showing it in the survey itself.

Response metadata works best for short, descriptive context that helps explain the response later when you review it or export it.

Add metadata to a survey URL

Add query parameters that start with gxrm_. The rest of the parameter name becomes the metadata key.

https://getuserfeedback.com/s/SURVEY_ID?gxrm_journey_stage=onboarding

For embedded surveys, use the same parameters on the embed URL:

https://getuserfeedback.com/embed/YOUR_API_KEY/SURVEY_ID?gxrm_journey_stage=onboarding&gxrm_task_type=report-export&gxrm_survey_moment=post-action

The examples above save:

{"journey_stage": "onboarding","task_type": "report-export","survey_moment": "post-action"}

Example use cases

Workflow context

Use metadata to preserve the workflow or moment around the response.

https://getuserfeedback.com/embed/YOUR_API_KEY/SURVEY_ID?gxrm_journey_stage=onboarding&gxrm_task_type=report-export&gxrm_survey_moment=post-action

This saves:

{"journey_stage": "onboarding","task_type": "report-export","survey_moment": "post-action"}

Configuration context

Use metadata to preserve the environment or setup around the response.

https://getuserfeedback.com/s/SURVEY_ID?gxrm_deployment_model=self-hosted&gxrm_workspace_size=1-10&gxrm_team_function=support

This saves:

{"deployment_model": "self-hosted","workspace_size": "1-10","team_function": "support"}

Error context

Use metadata to preserve short error context when feedback is collected after a failed step or interrupted flow.

https://getuserfeedback.com/s/SURVEY_ID?gxrm_error_type=validation&gxrm_error_surface=checkout&gxrm_error_step=payment-details

This saves:

{"error_type": "validation","error_surface": "checkout","error_step": "payment-details"}

Send multiple values

Repeat the same parameter to save an array:

https://getuserfeedback.com/embed/YOUR_API_KEY/SURVEY_ID?gxrm_selected_modules=billing&gxrm_selected_modules=reporting

This saves:

{"selected_modules": ["billing", "reporting"]}

Supported data types

URL-based response metadata preserves:

  • string values from a single gxrm_<key>=value
  • string[] values when you repeat the same gxrm_<key> parameter

Examples:

https://getuserfeedback.com/s/SURVEY_ID?gxrm_team_function=supporthttps://getuserfeedback.com/s/SURVEY_ID?gxrm_selected_modules=billing&gxrm_selected_modules=reporting

Which save as:

{"team_function": "support","selected_modules": ["billing", "reporting"]}

Everything arrives through the URL, so values are preserved exactly as URL strings. That keeps the format simple, predictable, and easy to generate from any host app.

Normalization and sanitization

Metadata keys are normalized before storage so small differences in casing or spacing don't create separate fields. For example, gxrm_Team Function is stored as team_function.

Sensitive-looking values are sanitized automatically before they are saved. If a value looks like an email address, URL, phone number, token, or similar sensitive string, it is replaced with a safe placeholder such as [EMAIL].

Where metadata appears

Metadata is saved with the response when the survey is submitted. You can see it on the response detail page, and CSV exports include metadata columns named Metadata: <key>.

Metadata is optional. Empty keys and empty values are ignored.

For practical limits and guardrails, see Limits.