+x+xTo say whether things are set up correctly or determine where the issue is, I would need the link to your Inquisit Web experiment's start page, the individual scripts are not sufficient. Could you please provide that link. Also, it's unclear from your description whether your participants start with Inquisit or with another Qualtrics survey, i.e. is it
(1) Qualtrics -> Inquisit -> Qualtrics
or just
(2) Inquisit -> Qualtrics
?
If (1), then "in the qualtrics data file, the subjectid column is being filled with a series of random letters and numbers (e.g., R_TjGmNZYzXVnohq1")" is the result you should desire, the random letters and numbers would be the Qualtrics ID from the 1st (pre-Inquisit) Qualtrics survey, and you would want subject IDs to remain intact across all three parts.
Hi Dave,
So sorry about that! Here is the inquisit launch page address:
https://mili2nd.co/wtkbAnd, participants start with inquisit and then go to qualtrics (Inquisit -> Qualtrics).
Thanks!
Thank you for the link -- in your <batch> script, you override the URL you've specified in the settings. In the settings you have

with the subject id configured to be forwarded via query parameter.
But then, in your <batch> you replace that with merely
<values>
/ finishurl = "https://uky.az1.qualtrics.com/jfe/form/SV_eSdT2HVQ578jLQp"</values>
<parameters>
/ finishurl = "https://uky.az1.qualtrics.com/jfe/form/SV_eSdT2HVQ578jLQp"</parameters>
<batch condition01>
/ subjects = (1 of 2)
/ file = "Welcome.iqx"
/ file = "AMP_PleasantUnpleasant.iqx"
/ file = "SMP_Richpoor.iqx"
/ onscriptend = [if(batch.condition01.currentscript == "smp_richpoor.iqx")
{
parameters.finishurl = values.finishurl;
defaults.finishpage = parameters.finishurl;}
]
</batch>
without the subject id query parameter. This takes precedence over / replaces what you have in the web experiment settings, so no ID is sent over to Qualtrics.
Is there a reason for this or is it a mistake?
Moreover, in the 2nd <batch> condition, the /onscriptend logic
<batch condition02>
/ subjects = (2 of 2)
/ file = "welcome.iqx"
/ file = "smp_richpoor.iqx"
/ file = "amp_pleasantunpleasant.iqx"
/ onscriptend = [if(batch.condition02.currentscript ==
"explicit.iqx")
{
parameters.finishurl = values.finishurl;
defaults.finishpage = parameters.finishurl;
}
]
</batch>
references a script that is not run by the <batch> at all. Here, too, I'm wondering whether that's a mistake and should read
<batch condition02>
/ subjects = (2 of 2)
/ file = "welcome.iqx"
/ file = "smp_richpoor.iqx"
/ file = "amp_pleasantunpleasant.iqx"
/ onscriptend = [if(batch.condition02.currentscript ==
"amp_pleasantunpleasant.iqx")
{
parameters.finishurl = values.finishurl;
defaults.finishpage = parameters.finishurl;
}
]
</batch>
or whether "explicit.iqx" has been omitted from the batch by mistake.