Set Up Your Survey
Enter the brand you're testing, choose your modules, connect data collection, and generate a shareable link and QR code for respondents. No coding required.
Step 1 — Brand Configuration
This name replaces every mention of "the brand" throughout all survey questions automatically.
Step 2 — Select Additional Modules
The 5 core Brand Potential dimensions are always included. Toggle additional modules on or off.
✓ Dimension 1 — Passion
✓ Dimension 2 — Mission
✓ Dimension 3 — Profession
✓ Dimension 4 — Vocation
✓ Dimension 5 — Engagement
Additional Modules
Step 3 — Connect Google Sheets (free data collection)
📊 One-time setup — about 3 minutes
- Go to sheets.google.com → create a new blank spreadsheet
- Name it e.g.
Brand Potential — [Your Brand] - Click Extensions → Apps Script in the menu
- Delete all the default code and paste the script below
- Click Deploy → New Deployment → Web App
- Set Execute as:
Meand Who has access:Anyone - Click Deploy, authorise when prompted, copy the Web App URL
- Paste that URL into the field below
// Paste this entire script into Google Apps Script
function doPost(e) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var data = JSON.parse(e.postData.contents);
if (sheet.getLastRow() === 0) {
sheet.appendRow(["Timestamp","Brand","Session ID","Familiarity",
"Relationship","Industry Flag","Age","Gender","Location","Country",
"Dim1","Dim2","Dim3","Dim4","Dim5","Total","Score %","Rating","All Answers"]);
}
sheet.appendRow([
new Date(), data.brand, data.sessionId,
data.B1, data.B2, data.B3, data.B4, data.B5, data.B6, data.B7,
data.D1, data.D2, data.D3, data.D4, data.D5,
data.total, data.totalPct, data.rating,
JSON.stringify(data.allAnswers)
]);
return ContentService
.createTextOutput(JSON.stringify({status:"ok"}))
.setMimeType(ContentService.MimeType.JSON);
}
function doGet(e) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var data = sheet.getDataRange().getValues();
if (data.length < 2) return ContentService.createTextOutput(JSON.stringify({rows:[]})).setMimeType(ContentService.MimeType.JSON);
var headers = data[0];
var rows = data.slice(1).map(function(row) {
var obj = {};
headers.forEach(function(h,i){ obj[h] = row[i]; });
return obj;
});
return ContentService
.createTextOutput(JSON.stringify({status:"ok", rows:rows}))
.setMimeType(ContentService.MimeType.JSON);
}
Paste the URL after deploying. Looks like: https://script.google.com/macros/s/ABC.../exec
💡 No Google account? Leave this blank — the survey still works and respondents see their results. You can add it later and regenerate the link.
Step 4 — Distribution Settings
Survey closes automatically once this number is reached.
Survey stops accepting responses after this date.
Show / hide sections
Background questions (B1–B7)
Familiarity, relationship, demographics
Word association grids
20 free-text fields per dimension
Open-ended notes fields
Free text comment boxes
Progress bar
Shows % complete at top of survey
Show score to respondent
Off by default — results go to researcher dashboard only
Step 5 — Generate Your Survey Link
All your settings are encoded directly into the link — no database needed. When respondents open it, the survey is automatically configured with your brand name.
⚠️ Make sure 2_respondent_survey.html is in the same folder as this file when you upload to Netlify.
Respondent Survey Link
—
Open Survey →
QR Code
How to Share
📧 Email: Paste the link directly into your email
💬 WhatsApp / Slack / Teams: Share the link in any messaging app
📱 In-person / printed: Download and print the QR code above
🌐 Website: Paste the embed code below into any webpage
📊 Survey panel (Prolific, Qualtrics): Use as an external survey link
💬 WhatsApp / Slack / Teams: Share the link in any messaging app
📱 In-person / printed: Download and print the QR code above
🌐 Website: Paste the embed code below into any webpage
📊 Survey panel (Prolific, Qualtrics): Use as an external survey link
Iframe Embed Code (for websites)
—