Qualtrics
Participants arrive at your Qualtrics link with three IDs added: PARTICIPANT_ID (pseudonymous, different for each lab), STUDY_ID, and SESSION_ID (one per attempt). These steps save them with each response and send participants back to Populiva at the end.
-
1. Save the IDs as embedded data
Open Survey flow, choose Add a New Element Here, then Set Embedded Data. Add three fields named exactly as below and leave each value as “Value will be set from Panel or URL”.
Move the element to the very top of the survey flow, then choose Apply. Qualtrics now reads the IDs from the link and saves them with every response.
PARTICIPANT_ID STUDY_ID SESSION_ID -
2. Send participants back when they finish
In Survey flow, add an End of Survey element at the end, choose Customize, tick Override Survey Options, and choose Redirect to a URL.
Paste your study's completion address. Copy the exact one from your study page (under “Connect your survey”); it looks like this:
For other endings (people who screen out, or who fail an attention check), add more End of Survey elements with branch logic, each redirecting with its own completion code from your study page. Each code can approve, reject, screen out (paid), or add people to a group.
https://populiva.com/c/STUDY_ID?code=COMPLETION_CODE -
3. Add the quality snippet (optional)
Go to Look & feel, then General, then Header, and choose Edit. Open the source view (the <> button) and paste the tag below. The header is on every page, so the snippet runs on each one. ${e://Field/SESSION_ID} is Qualtrics piped text for the SESSION_ID you saved in step 1.
The snippet sends only counts (time, tab switches, pastes, typing speed, automation), never answers. data-ai-check adds a hidden instruction that only AI agents read; delete that attribute if you don't want it.
<script src="https://populiva.com/q.js" data-session="${e://Field/SESSION_ID}" data-ai-check="on" async></script> -
4. Tell participants
If you use the snippet, say so in your consent form, for example: “This survey records counts of activity on each page, such as time spent and pasting, to check data quality. It doesn't record your answers or what you type.”
Test before you launch
Open your survey link with test values added, for example ?PARTICIPANT_ID=test&STUDY_ID=1&SESSION_ID=test, and check that the three values are saved with your test response.
The snippet ignores sessions it doesn't know, so tests don't create data. The completion address will say there's no active study for you; that's expected outside a real session.