You may field identical surveys across different teams within your organization. For example, an event company may run feedback surveys for each one of their events. Their events are all run by different groups and each group does not have access to any of the other groups’ surveys and data. But what if the event company still needs to run reports on all of the data combined?
Many other organizations likely have similar needs for both master survey reporting and individual survey reporting. Master survey reporting also allows you to do benchmarking as you can compare across the individual datasets.
While the Combined Reporting feature is a good option, it does come with a few limitations. With the help of Alchemer's Custom Scripting, there is a powerful alternative that allows you to create responses in a Master Survey right after they are submitted in another survey.
Add an example master survey to your account!
Setup
- Using our event company example from above, the first step is to create a Master Survey that could be copied for each event. In our example, we created a short event feedback survey. Once you create your master survey, note the Survey ID number (highlighted below) as you will use this later.
Keep in mind that your Master Survey is not intended to be shared with respondents. It is intended to store responses that are passed in from the individual surveys. - Once you have added all of the necessary questions to the Master Survey, add a Custom Script Action on the Thank You Page. Your action does not necessarily need to be on the Thank You Page, but it must be on a page that is after the last question that you want to send over.
- Paste the following Custom Script into the Script Code field:
This Custom Script will tie any copies back to the master. Data collected in the copied surveys will be posted to the master survey – automatically, in real time.--start code --Build an array of question IDs that collect data questionids = {2,3,4} --Build an array of question IDs/values to transfer to the master survey. datatotransfer = {} for key, value in pairs (questionids) do datatotransfer[value] = getvalue(value) end --Then use listadd (which creates a response in another survey) to pass in the data! --Replace xxxxx with the Survey ID of this master survey. listadd(xxxxxxx,datatotransfer) --end code
- After pasting the script, make sure to:
- Modify/customize the array of survey question data that you want to send to the Master Survey. Review the listadd function documentation for syntax.
- Update the surveyID parameter within the listadd function to reflect the ID of your Master Survey.
- (Optional) If you need to identify (within the Master Survey) which individual survey responses came from:
- Consider adding a Hidden Value Action to the Master Survey.
- When a survey is copied from the master, instruct the survey creator to input an identifier into the Hidden Value (in the copied survey). This can be the copied survey's title or the name of the event, but should be standardized across the copied surveys.
- Make sure to map the Hidden Value within the Custom Script so that its data is passed from the copied survey to the master.
- Once you have made the necessary updates to the Custom Script, make sure to click Save Action. Your Master Survey is now ready!
- In order to tie each related individual survey back to the Master, create the new survey by copying the Master Survey. The individual event surveys can be changed as needed – rebranded, new questions added, irrelevant questions disabled – but they still transmit any relevant data back to the master survey for grouped reporting.
- Finally, thanks to the enterprise settings in Alchemer, you can ensure that each event team only has access to the individual event surveys that they should have access to. Security and privacy are maintained across the organization!
Considerations
There are a few things to consider when using this solution:
- When you use the listadd function, you are creating responses in questions (within the Master Survey) that are identified by question ID.
- Make sure that you push data from/to compatible questions. For example, pushing data from an Essay question into a Radio Buttons question is unlikely to be successful.
- Your Master Survey should not be shared with respondents, but is rather intended as a data warehouse for all individual surveys that were copied from the master. We recommend adding a Text / Instruction element to the top of the Master Survey to communicate its functionality, or locking down access to the Master Survey to only those users that need it.
Scripting and Other Custom Solutions
We’re always happy to help you debug any documented script that is used as is. That said, we do not have the resources to write scripts on demand or to debug a customized script.
If you have customization ideas that you haven't figured out how to tackle, we're happy to be a sounding board for Alchemer features and functionality ideas that might meet your needs. Beyond this, check out our Professional Services; these folks have the scripting chops to help you to achieve what you are looking for!