Dec 25, 2025

Public workspaceProtocol for Conducting Multilingual Customizable Structured Electronic Brainwriting Session: Utilizing Google Sheets with Google Apps Script V.2

Protocol for Conducting Multilingual Customizable Structured Electronic Brainwriting Session: Utilizing Google Sheets with Google Apps Script
  • Mahmut Berkan Çetin1,
  • Selim Gündüz1
  • 1Adana Alparslan Türkeş Bilim ve Teknoloji Üniversitesi
Icon indicating open access to content
QR code linking to this content
Protocol CitationMahmut Berkan Çetin, Selim Gündüz 2025. Protocol for Conducting Multilingual Customizable Structured Electronic Brainwriting Session: Utilizing Google Sheets with Google Apps Script. protocols.io https://dx.doi.org/10.17504/protocols.io.x54v9r3xzv3e/v2Version created by Mahmut Berkan Çetin
License: This is an open access protocol distributed under the terms of the Creative Commons Attribution License,  which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are credited
Protocol status: Working
We use this protocol and it's working
Created: May 16, 2025
Last Modified: December 25, 2025
Protocol Integer ID: 218448
Keywords: 6-3-5 Brainwriting, Google Apps Script, Remote Collaboration, Group Brainstorming, Automation Script, Google Sheets, Idea Generation, Collaborative Research Tools, Research Methods, Digital Research Methods, Qualitative Research, Team Collaboration, Innovation Methods, multilingual customizable structured electronic brainwriting session, conducting multilingual customizable structured electronic brainwriting session, automating traditional brainwriting session, traditional brainwriting session, localizable multilingual customizable structured electronic brainwriting, remote collaborative sessions for idea generation, electronic brainwriting system, document brainstorming session, structured electronic brainwriting system, remote collaborative session, idea generation, idea development process, utilizing google sheet, google apps script, documentation, participant contribution, enabling participant, session, spreadsheet, building new idea, google colab, participant, google sheets with google apps script, next
Disclaimer
DISCLAIMER – FOR INFORMATIONAL PURPOSES ONLY; USE AT YOUR OWN RISK

This protocol provides guidance on implementing a customizable structured electronic brainwriting method using Google Apps Script. It is intended for informational purposes only and does not guarantee specific outcomes. Users should assess its suitability for their own needs and exercise discretion when implementing it. The authors and contributors assume no responsibility for any issues arising from its use, including but not limited to technical errors, data loss, or unintended results.
Abstract
This protocol outlines the process for using Google Sheets, along with Google Apps Script and Google Colab, to set up and manage a language-localizable Multilingual Customizable Structured Electronic Brainwriting (mCSEB) session, which enables remote collaborative sessions for idea generation and downstream analysis. This technique creates an online platform by automating traditional brainwriting sessions, which involve six participants each coming up with three ideas in five minutes per round and passing their paper round-robin to the next participant, building new ideas upon previous contributions over the course of six rounds, producing 108 ideas in just half an hour.

Google Sheets functions as a versatile platform for real-time input collection and documentation while enabling participants to effortlessly browse the spreadsheet and contribute to the idea development process. With this approach, moderators can efficiently guide and document brainstorming sessions, whether they’re in-person or virtual. The (6-)6-3-5 structured electronic brainwriting system is designed to automatically track progress, organize participant contributions, and prepare input for further analysis in Google Colab, which offers access to various statistical and machine learning libraries of the Python language.
Image Attribution
Image created by Mahmut Berkan Çetin, 2025. Licensed under CC BY 4.0.
Guidelines
Prerequisites:

  1. Basic spreadsheet skills
  2. Familiarity with Google Workspace and JavaScript
  3. Moderator access in Google Workspace (if you're in an organization)
Materials
  1. Computer with internet access
  2. Google account with access to:
  • Google Sheets,
  • Google Apps Script (enabled),
  • Web browser - Google Chrome (recommended), Firefox (supported), Safari (supported), Microsoft Edge (supported),
  • Google Colaboratory (enabled)

No additional software installation is needed.
Troubleshooting
Safety warnings
Data Privacy and Security:
  • Let participants know that their inputs are visible to others since six participants access the same Google Sheet simultaneously. This is by design to help spark new ideas and let participants get inspired from one another.
  • If anonymity is desired, make sure to strip any identifiable details before you share or analyze the responses. Using codenames for worksheets can help safeguard identities and enhance privacy.

Script Permissions:
  • Google Apps Script needs certain permissions to access and make changes to Google Sheets. Before running the script (see Step 9 and Step 29), users will be asked to approve these permissions. It's a good idea for users to check the script to see how it works and make sure it meets their needs.
  • Like any custom code, this script might have some bugs.

Internet Connectivity:
  • To keep the script running smoothly, a steady internet connection is a must since it needs real-time access to Google Sheets. If the connection drops, you might face delays, missing data, or even lost inputs.
  • Make sure everyone involved in the brainwriting session has a reliable internet connection to avoid these problems.
Ethics statement
CRediT Author Statement:
Conceptualization, M.B.Ç.; methodology, M.B.Ç.; validation; S.G.; formal analysis, M.B.Ç. and S.G.; investigation, M.B.Ç.; resources, M.B.Ç. and S.G.; data curation, M.B.Ç. and S.G.; writing—original draft preparation, M.B.Ç.; writing—review and editing, S.G.; visualization, M.B.Ç.; supervision, S.G. 
Before start
Research the Focus Area:
  • Before kicking off the brainwriting session, take some time to dive deep into your research question or focus area. It's really important to have a solid grasp of the topic and what you hope to achieve in the session.
  • Put forward a clear and straightforward problem statement. This will help participants get engaged and stay focused on coming up with new ideas.

Prepare for Implementation:
  • Create a customized script using the Structured Electronic Brainwriting Session Configuration Generator tool.
  • You can familiarize yourself with the Google Apps Script, make sure you understand the script provided, and make any necessary changes to fit your requirements.
Test the Setup:
  • Make sure to tackle any bugs or limitations you find before you work with your actual participants. Conduct a trial run with a small group or colleagues to identify any potential issues with the script, permissions, or workflow.

Ensure Participant Readiness:
  • Let participants know what to expect from the session ahead of time.
  • Make sure everyone has a stable internet connection and can access Google Sheets without any issues.
Configuration Phase
1h
Conduct preparatory research.
15m
Preparatory steps before using Customized Structured Electronic Brainwriting techniques:

Note
Define the Research Question or Objective
  • Ensure it is exploratory or ideation-focused (not hypothesis-driven).

Conduct a Needs Assessment
  • Clarify the desired outcome: idea generation, problem reframing, or innovation.

Analyze Participant Characteristics
  • Identify target users or stakeholders (personas, demographics, expertise).
  • Consider cognitive diversity, cultural norms, and power dynamics.

Evaluate Contextual and Logistical Constraints
  • Check for digital access, language requirements, and time zones (for remote sessions).
  • Address ethical considerations (consent, anonymity, equity).

Choose the Brainwriting Variant
  • Decide between 6-3-5, freewriting, digital rotation, or asynchronous formats.


Note. Some users may need several days to complete the preparatory research, so this step serves as a checklist once they have reached their decision.

15m
Software
Structured Electronic Brainwriting Session Configuration Generat
NAME
Mahmut Berkan Çetin
DEVELOPER
Note. Streamlit Cloud automatically puts inactive web apps to sleep. If this happens, simply wake the app, which usually takes about 30 seconds to start up again.

30s
Activate multilingual session for mCSEB (Default: mono-lingual session, CSEB)

Toggle the Multilingual Session option

30s
Choose the application interface and session language (Default: English). Turkish, German, Spanish, and French languages are already localized.

Choose app language

1m
Choose participant languages

Toggle to unlock participant name and language customization
Note. Some users noted that language selection for participants sometimes require double-selection.

(OPTIONAL) Add a logo for the landing page

Tick the "Include a logo in Landing Page?" box and paste an image URL

Fill in the "Quick Setup" form in accordance with the research needs, a (6-)6-3-5 Structured Electronic Brainwriting session is given by default, and click on the "Generate Script" button.



Fill in the form and generate the script

5m
(OPTIONAL) If the language of the session is other than the given languages, choose "Localization" tab for translating the user-visible UI related part of the script.
Copy the code to the clipboard, and/or download the script for archival purposes.

Copy code by clicking on the icon at the right upper corner (invisible until hovering over it)

30s
Open Google Sheets (sheets.google.com)
Software
Google Sheets
NAME
Google LLC
DEVELOPER

Script generator directs users to Google Sheets with a link as well

1m
Create a new blank spreadsheet

Start a new blank spreadsheet

30s
Give spreadsheet a meaningful name (i.e. Brainwriting Session)

Change the spreadsheet name

30s
Access to Apps Script
Software
Google Apps Script
NAME
Google
DEVELOPER

1m
Click on Extensions > Apps Script

Access to Apps Script from the spreadsheet

30s
A new window with default configuration will open

Apps Script file with the default function

1m
Delete the default function.

30s
Paste the generated script to Apps Script



1m
Save the script with a descriptive name (e.g., "brainwriting-session")

Rename project and check GLOBAL_VARIABLES

1m
Run the script
1m
Notice that the "Run" command is inactive. Be sure to "Save project to Drive" to activate the "Run" command.

Save project to Drive

1m
Now the "Run" command is active, "Run" the script

"Run" the script

1m
Accept any required permissions when prompted
1m
After "Run" the script, "Authorization required" pop-up window appears.
Click on "Review permission"

Authorize the script - Review permission


30s
Choose the related account.

Authorize the script - Choose Account

1m
Advanced verificationSince this is a custom script, it will warn about code verification. Click on "Advanced"
Authorize the script - Advanced verification

30s
Click on "Go to {script-name} (unsafe)"

Authorize the script - Go to the session

1m
Allow accessAnd "Allow" the script to create the brainwriting session.


In case a logo visualization is selected, there might be multiple boxes to select. "Select all" and "Continue".


Otherwise, just Authorize the script - Allow access


1m


Expected result
  • Execution completed without an error

Execution completed


1m
To activate the Navigation Menu, refresh the spreadsheet.


Refresh the browser

Expected result

Navigation Menu activation by refreshing the page


30s
To automatically create a landing page, click on "Create Landing Page"


30s
In case there is a logo link added, access should be given in order for function at cell L19 to display the logo


Notice that the function fails to display the logo, "Allow access" to the connection

30s

Expected result
The landing page is automatically created.

The landing page shows brief information about the session


1m

The session creation is the next step that automatically creates participant private worksheets and moderator dashboard


Workshop Tools > Create Session to automatically create the session items


Expected result
  • 6 sheets per participant for idea generation
  • 1 tracking sheet
  • Checkbox-based progress tracking

Participant sheets (for 6 participants) and one tracking sheet

Empty participant sheet example (language=en)

Empty participant sheet example (language=tr)


4m
Preparation Phase
50m
Invite all participants to the spreadsheet
10m
Click the "Share" button in the top right corner

Click "Share" button

30s
Grant access for Anonymous contributions

Choose "Anyone with the link" for anonymous session generation


Give "Editor" access to the participants, and copy the link

30s
Brief participants about the session
5m
If an anonymous session is preferred, assign participants anonymous names.
5m
Determine the session date and time
4m
Send an email with:
  • Session date and time
  • Time expectations per round
  • Problem statement/topic
  • Basic instructions for using the sheet
  • Their assigned starting sheet
  • The session participation link that is copied in Step 13.2
  • Any technical requirements
  • Contact information for technical support
15m
Use the following template to instruct participants:

Note
Basic Instructions for Using the 6-3-5 Electronic Brainwriting Sheet

1. Accessing Your Sheet
  • Open the link sent to your email
  • Navigate to your assigned sheet
2. Round Progression
  • You will have one column for your ideas per round
  • Write one complete idea per row
  • Each round lasts [5] minutes
  • When the time is up, the moderator will activate "Next Round"
  • Your sheet will be updated to show new ideas to build upon
  • Complete all three rows in your new column
  • Check the box in the Progress Tracking sheet when you finish
3. Important Rules
  • Do not delete or modify others' ideas
  • Wait for the moderator's signal before starting each round
  • If you have technical issues, contact the moderator immediately
  • Complete all three ideas before checking your progress box

10m
Facilitation Phase
50m
Start the session when all participants are ready in their designated sheets.
5m
Start the session with Workshop Tools > Start Session

Click "Start Session"

30s
While running the script, participants will receive a message declaring the session's start.

Notice the yellow warning when the script is running, start the timer when the automation stops.

30s
Idea Generation and Submission
30s
Participants write 3 ideas within the time limit and click on the check box.

When a participant finishes the number of ideas for the round, checking the box below signals readiness to the moderator

5m
Meanwhile, the moderator checks completion in Progress Tracking

The moderator submits the answers and proceeds with the next round

Submit the answers using Workshop Tools > Submit & Next.
30s
When the moderator submits the round, the ideas from each sheet are added to the ProgressTracking sheet. Previous round values are swapped round-robin to the next participant's sheet.

Round 1 values are collected and next round started

30s
Participant sheets are updated with the previous answers (grey background), and a new check box appears under the current round column ideas (green background).

Next participant's (language=de) sheet in the second round, see regardless of the language of other participants, round 1 ideas are translated to German for a smoother experience

30s
Repeat idea generation and collection steps for each round until the end of Round 6.
Go to and repeat the idea generation process until Round 6

Ideas are collected, and the last round ideas are ready to be submitted

35m
Verify all rounds are completed
1m
Last round submission automatically fetches data, but stops generating further input from the participants. Participants then receive a message thanking their participation in the CSEB session.

Expected result
A "Session Completed" message will appear to participants.

Session end message to participants for their contribution



1m
Analysis Phase
1h
After the session, it is good practice to restrict the session participation to prevent unintended losses.

Change the Editor role to Viewer ==> Share > Role > Viewer

1m
In a new worksheet, copy ideas in a structured format for translation and further analysis by using the "Prepare Data" automation


"Prepare Data" for the downstream analysis

1m
  • "PrepData" worksheet is automatically created,
  • All participant-generated ideas are in "RawIdeas" column
  • Regardless of their language, all were translated into English in the "Translation" column
  • (Optional) Notice that "ManualCategories" column is created for researcher to fill with thematic analysis but it is not mandatory for further analysis.

Expected result

"PrepData" worksheet fetches "IdeaID", "IdeaTimestamp", "RoundTimestamp", "RawIdea", and "Translation" data automatically and structures in an analysis-ready format. Optionally, "ManualCategories" column can be used to write researcher-generated categories.


1m
(Optional) Export collected ideas, download in the preferred format

(Optional) Download ideas in Excel format: File > Download > Microsoft Excel (.xlsx)

1m

1m
Share results with participants (Optional)
1m
Create Colab Environment
Software
Google Colab
NAME
Google Llc
DEVELOPER

1m
Click "Workshop Tools" > "Create Colab Environment" to start the downstream analysis

Click "Workshop Tools" > "Create Colab Environment"

1m
In the pop-up window, copy the automatically generated session information. Then click on the link with an analysis-ready Colab notebook.

Pop-up window with session information and Colab notebook link

1m
Clicking the link opens the notebook directly from GitHub. Notice that it is not saved to Drive.

Expected result

An analysis-ready Colab notebook is opened


30s
Save Colab notebook to Drive in order to prevent unexpected losses.
1m
"Save a copy in Drive"

"File" > "Save a copy in Drive"

30s
A copy of the Colab notebook is created and will be opened in a new tab

DataAnalysis notebook is saved to Drive

30s
Fill in the Author info for personalization

Fill in the Author info

1m
Paste the session information copied in Step 23.2 to the notebook's 2nd section, Data Loading & Configuration, instead of the placeholder information

Session information placeholder

30s
(Optional) If there are manual categories and/or sub-categories, the notebook's 2.1. section has the option to include them in the analysis. Use check boxes to activate. Furthermore, the analysis by default uses K-means clustering categories for the analysis, it can be changed to BERTopic-generated labels.


Additional details to be filled if manual categories/sub-categories are added and if a more advanced topic labeling is desired

1m
Review the code before using. All methods and code snippets are explained in casual and academic language. Please be sure to use the notebook after a careful review.
20m
Add domain-specific synonyms in section 3 of the notebook. The synonym map can be iteratively changed based on the desired results.

An example of a synonym map for the Corporate Local Responsibility (COLOR) related session

10m
Now that the required information is given, the notebook can run all analyses

Click "Run all" to start the analysis

3m
After the Python libraries are installed, it will ask for access to the Google Sheets

Click "Allow" for Colab acces to Google Sheets

1m
Choose an account

Choose the account that allows the access

30s
Continue further authorization questions

Click "Continue" for authorization


30s
Give access to Google Sheets

"Choose all" options and "Continue"

1m
After granting access, the notebook will quickly run the whole analysis

Expected result
  • Colab completes the analysis successfully
  • Each analysis displays the results in figures or tables
  • Tables are written back to the Google Sheet (i.e., Brainwriting Session)

2m
Check section 6 for UMAP projections of participant ideas

UMAP projections scatterplot

1m
Check section 8 for Cosine similarity heatmap between categories

Cosine similarity heatmap

1m
Check section 9 for Keyword Co-occurrence Network

Keyword co-occurrence network (threshold=3)

If the network is too dense or too sparse, adjust the threshold parameter

Keyword co-occurrence network (threshold=2)

2m
Check section 10 for the list of the most frequent keywords for each category

Category keyword frequency table

1m
Check section 11 for BERTopic categories and visuals related to these categories

BERTopic categories table

1m
Check automatically added worksheets to the Google Sheets.

processing-labels worksheet writes back the processed text in each step of cleaning and the labels of K-means clustering

df_keywords_[mac] writes back the table of frequencies

2m
(Optional) Each section gives a description of the method and references related to the technique. Although some methods and visuals are self-explanatory, the best practice is to learn more about them and improve the analysis.
(Optional) Use custom methods and techniques to get the most out of the data and share the notebook with the community for collaboration and open science.
(Optional) Automated methods present one side of the story, but for a more comprehensive view, it is advised to use thematic analysis to find categories and sub-categories of the ideas; then, the analysis can be redone with them.
(Optional) With a pre-configured and pre-access-given notebook, it takes less than a minute to get the results. Hence, after-session opinion sharing with participants can be done using the analysis results.
Protocol references
Blondel, V. D., Guillaume, J. L., Lambiotte, R., & Lefebvre, E. (2008). Fast unfolding of communities in large networks. Journal of Statistical Mechanics: Theory and Experiment, 2008(10), P10008. https://doi.org/10.48550/arXiv.0803.0476
Çetin, M. B. (2025). Customizable Structured Electronic Brainwriting (CSEB) and Multilingual CSEB (mCSEB) System: Utilizing Google Sheets with Google Apps Script (swh:1:dir:59dcb6bebad0a69f1e389410254f351035fe1e8d; Version V1) [Python, JavaScript]. Adana Alparslan Türkeş Science and Technology University; Software Heritage. https://archive.softwareheritage.org/swh:1:dir:59dcb6bebad0a69f1e389410254f351035fe1e8d;origin=https://github.com/mberkancetin/Customizable-Structured-Electronic-Brainwriting;visit=swh:1:snp:37db5037e4bd39f4694f8ce369670d6e1151b43d;anchor=swh:1:rev:9da8a646653d96b373de9392965b1ec794074a48
Grootendorst, M. (2022). BERTopic: Neural topic modeling with a class-based TF-IDF procedure. arXiv preprint https://doi.org/10.48550/arXiv.2203.05794.
Heslin, P. A. (2009). Better than brainstorming? Potential contextual boundary conditions to brainwriting for idea generation in organizations. Journal of Occupational and Organizational Psychology, 82(1), 129-145.
MacQueen, J. (1967). Some methods for classification and analysis of multivariate observations. 1, 281–297. https://digitalassets.lib.berkeley.edu/math/ucb/text/math_s5_v1_article-17.pdf
Manning, C. D., Raghavan, P., & Schütze, H. (2009). Introduction to Information Retrieval. Cambridge University Press. Online Edition. https://nlp.stanford.edu/IR-book/pdf/irbookonlinereading.pdf
McInnes, L., Healy, J., & Melville, J. (2020). UMAP: Uniform Manifold Approximation and Projection for Dimension Reduction. arXiv preprint https://doi.org/10.48550/arXiv.1802.03426.
Michinov, N. (2012). Is Electronic Brainstorming or Brainwriting the Best Way to Improve Creative Performance in Groups? An Overlooked Comparison of Two Idea‐Generation Techniques. Journal of Applied Social Psychology, 42(S1). https://doi.org/10.1111/j.1559-1816.2012.01024.x
Nijstad, B. A., Stroebe, W., & Lodewijkx, H. F. M. (2002). Cognitive stimulation and interference in groups: Exposure effects in an idea generation task. Journal of Experimental Social Psychology, 38(6), 535–544.
Nijstad, B. A., Stroebe, W., & Lodewijkx, H. F. M. (2003). Production blocking and idea generation: Does blocking interfere with cognitive processes? Journal of Experimental Social Psychology, 39(6), 531–548.
Nijstad, B. A., & Stroebe, W. (2006). How the group affects the mind: A cognitive model of idea generation in groups. Personality and Social Psychology Review, 10(3).
Osborn, A. F. (1947). Your creative power: How to use your imagination. Charles Scribner’s Sons Ltd.
Osborn, A. F. (1957). Applied imagination: Principles and procedures of creative problem-solving. Scribner.
Paulus, P. B., Baruah, J., & Kenworthy, J. (2023). Brainstorming: How to get the best ideas out of the “group brain” for organizational creativity. In Handbook of Organizational Creativity (pp. 373–389). Elsevier. https://doi.org/10.1016/B978-0-323-91840-4.00019-0
Paulus, P. B., & Brown, V. R. (2007). Toward more creative and innovative group idea generation: A cognitive‐social‐motivational perspective of brainstorming. Social and Personality Psychology Compass, 1(1), 248-265. https://doi.org/10.1111/j.1751-9004.2007.00005.x
Paulus, P. B., & Dzindolet, M. T. (1993). Social influence processes in group brainstorming. Journal of Personality and Social Psychology, 64(4), 575–586. https://doi.org/10.1037/0022-3514.64.4.575
Paulus, P. B., & Nijstad, B. A. (2003). Group Creativity: Innovation through Collaboration. Oxford University Press.
Paulus, P. B., & Yang, H.-C. (2000). Idea Generation in Groups: A Basis for Creativity in Organizations. Organizational Behavior and Human Decision Processes, 82(1), 76–87. https://doi.org/10.1006/obhd.2000.2888
Reimers, N. & Gurevych, I. (2019) Sentence-BERT: Sentence Embeddings Using Siamese BERT-Networks. Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Pro-cessing (EMNLP-IJCNLP), Hong Kong, November 2019, 3982-3992.
Rousseeuw, P. J. (1987). Silhouettes: A graphical aid to the interpretation and validation of cluster analysis. Journal of Computational and Applied Mathematics, 20, 53-65. https://doi.org/10.1016/0377-0427(87)90125-7
Salton, G., Wong, A., & Yang, C. S. (1975). A vector space model for automatic indexing. Communications of the ACM, 18(11), 613-620. https://doi.org/10.1145/361219.361220