Embedded Data >1000 chars failing in New Survey Taking Experience (regression?) | Experience Community
Skip to main content
Question

Embedded Data >1000 chars failing in New Survey Taking Experience (regression?)

  • January 29, 2026
  • 2 replies
  • 22 views

Forum|alt.badge.img+1

We’re seeing a breaking change in Qualtrics’ New Survey Taking Experience related to embedded data length limits and are looking for guidance or confirmation from Qualtrics staff or others who’ve hit this.

Use case
We deliver JavaScript/TypeScript-based cognitive assessments via Qualtrics. Each assessment produces JSON (trial-level + scoring data) that we store in embedded data fields. These values commonly exceed 1,000 characters but remain well under the documented 20KB embedded data limit.

Documentation
Qualtrics docs state:

“Each value of an embedded data field should never exceed 20KB (20,000 bytes).”
https://www.qualtrics.com/support/survey-platform/survey-module/survey-flow/standard-elements/embedded-data/

Observed issue
In the New Survey Taking Experience, survey submission fails when embedded data values exceed ~1,000 characters. At submit time, Qualtrics throws a schema validation error such as:

badSchema: body.ed.<FIELD_NAME> does not meet maximum length of 1000

The assessment itself runs correctly; only submission fails.

Legacy experience comparison
The same survey works in the legacy survey taking experience. We have confirmed successful legacy submissions with embedded JSON values ~1,500 characters long.

Reproduction

Why common workarounds don’t work

  • Compressing or transforming the JSON would break established downstream data pipelines.

  • Splitting data across multiple embedded fields isn’t viable: sessions may include 10–20 tasks with highly variable output size, and total size is already within documented limits.

Impact
This appears to be a regression or undocumented constraint in the new survey experience. It blocks multiple ongoing NIH-funded research projects that rely on Qualtrics’ documented embedded data behavior.

Question
Is the ~1,000-character limit in the new survey taking experience:

  • expected behavior,

  • a known regression, or

  • something that can be configured or fixed?

Any official guidance or confirmation would be greatly appreciated.

2 replies

Forum|alt.badge.img+1
  • Author
  • February 2, 2026

In case anybody else encounters this issue, after pushing Support to escalate the issue from their standard “we allow JavaScript but will not support anything surrounding/mentioning it” I received this response:
 

Thank you for your patience.

After further investigation by the Engineering team, I have been informed that this issue has been caused by the incompatibility between Javascript and New Survey Taking Experience as stated in this support page.

The custom Javascript built before activating the New Survey Taking Experience has caused compatibility issues.

I am afraid to inform you that you will have to either edit the custom Javascript in your survey, 

or disable the New Survey Taking Experience since there isn't a clear deprecation date for the legacy survey experience yet.

 

It is disappointing that previously documented behavior (20 KB limit) is being ignored (1,000 character limit). Unfortunately in our setup, to split these fields would be very complicated/not very feasible.


Tom_1842
Level 8 ●●●●●●●●
Forum|alt.badge.img+28
  • Level 8 ●●●●●●●●
  • February 2, 2026

I just tested with the NSTE on my end and can confirm:

  • When setting a value in the Survey Flow directly or with piping, Embedded Data fields can exceed 1000 characters.
  • When setting a value using setJSEmbeddedData, Embedded Data fields cannot exceed 1000 characters.

I agree that this limitation when using JS should be better documented. While more painful to configure on your existing setup, you could try saving these values to a hidden text entry field which can go well beyond 1000 characters. That looks to be the route that pogi went when he ran into the NSTE Embedded Data field limitation in this thread. You will need to use the JS described in that thread for setting values to text entry fields in NSTE.