Tutorial how to create online survey using Google Forms from scratch with example: from creating questionnaire title, develop questions (multiple choice, checkboxes, grid, scaling, paragraph), create section, skip jump, send out questionnaires, view survey responses to download survey result in spreadsheet.
In appendix there is a section on how to add geocode/geoposition to device sending forms for free, that is information on longitude, latitude and address (street name and number, city, state, Zip code, and country)
This tutorial is developed by Adhi.Wikantyoso@Maxiresearch.com, contact Adhi for Google Forms training.
www.maxiresearch.com
social pharmacy d-pharm 1st year by Pragati K. Mahajan
Google Forms Tutorial 2018 - Find Updated 2020 Tutorial in Latest Post
1. May 2018
How to Create
Online Survey
Using Google
Forms
Google
Forms
Tutorial
2. About Google Forms
2
• Google Forms, another product from Google, is an app to create web based forms and collect
answers online in realtime.
• As a platform, Google Forms can be used for practically any data gathering purpose, one just
need to modify its content and format/style. Google Forms is useful for students doing school
projects as well as professionals for company projects.
• Our experience in the past couple of years shows that Google Forms is solid; reliable and
secure app, during questionnaire development and data collection.
• Google Forms is Free.
• This tutorial is for Google Forms to create online questionnaire. Google Forms for quiz is in
separate tutorial.
4. Interest to Buy a New Smartphone
4
• The objective is to understand consumer interest to buy a new smartphone
• We want to show picture of the phone and its specification
• Mention the price at which it is going to be sold
• Understand price sensitivity
• As background to the finding, we want to understand brand awareness, brand image and
ownership.
• Final questionnaire will be shown first along with description for each question, then
followed on how to make the questionnaire.
5. Questionnaire (1)
5
Form Title
Title Description (optional)
Title
Question
Question Description
(optional)
Question Type : Short answer
Question Type : Paragraph
Form Description (optional,
here empty)
Question Type : Checkbox
Meaning that respondent can
select more than 1 answers
Description can be as
long as necessary
6. Questionnaire (2)
6
Question Type : Checkbox grid
Meaning that respondent can select more than 1 answers for each row
Question Type : Checkbox
Meaning that respondent can
select more than 1 answers
Google Forms will automatically
adjust display to best fit screen
device, here by adding scroll
Respondent to type in
other brand not listed
7. Questionnaire (3)
7
Question Type : Multiple Choice
Meaning that respondent can only
select 1 answer
Question Type : Short answer
Question Type : Paragraph
Respondent can type in their
answer as long as necessary.
Question Type : Short answer
Short answer can accept numeric in
addition to text
Can apply validation so only
numbers meeting criteria accepted
8. Questionnaire (4)
8
Question Type : Multiple Choice Grid
Meaning that respondent can only
select 1 answer for each row
After title we can add image to
display
Credit : GSM Arena
9. Questionnaire (5)
9
This is also image added after
the first image
Question Type : Paragraph
Question Type : Paragraph
Question Type : Linear Scale
We show lowest and highest scale and
corresponding labels.
In this question we create
question jump. Those answering
Interested/Very will go to certain
section while Not Interested/At all
go to another section
Will not able to move to next
section if any required answer
question (with * asterisk) is empty.
Credit : GSM Arena
10. Questionnaire (6)
10
This is the section for respondents
answering interested/very interested
This is the section for respondents
answering not interested/not at all
Will go to next assigned section,
in our case closing section
Will go to next assigned section, here
the same closing section
Question Type : Paragraph Question Type : Paragraph
Question Type : Multiple Choice
Meaning that respondent can only
select 1 answer
Question Type : Multiple Choice
Meaning that respondent can only
select 1 answer
11. Questionnaire (7)
11
Closing section
Question Type : Short answer
Question Type : Short answer
Question Type : Short answer
Question Type : Short answer
Question Type : Short answer
Question Type : Short answer
Question Type : Short answer
Question Type : Multiple Choice
Submit data
Will not able to submit data if
required answer question (with *
asterisk) is empty.
13. Developing Questionnaire
13
• Sign up or Sign in to your Google account
• Go to docs.google.com/forms or to your Gdrive click New> More > Google Forms
• In the top left, click the plus button +.
• A new form will automatically open
14. Complete Menu List in Form
14
• This is after you click the + button
Type in Question here
Select Question type on
dropdown menu here. The
default is Multiple choice.
Whether
answer is
required
for the
question
+ button to add
new question
Type Form
Description here
Set questionnaire
color palette here.
Can have
background image
Add on
Preview the
Questionnaire
To add title and
description
To add image
To add video
To add section
To delete
question
To duplicate
question
Other relevant
menu such as
inserting question
description,
shuffling order or
data validation
Setting
Questions tab
where you develop
questionnaire
Select Responses
tab if want to view
summary result of
entered responses
Type Form Title
here
Type in first option
answer here
Type in second option
answer here
Additional option
answer automatically
shows up
To send the form
More menu
(less often
used)
15. Start A New Form
15
• This is after you click the + button
Type Form Title here
Type in Question here
Select Question
type
Whether answer is
required for the
question
+ button to add
new question
What shows here depends
on question type
If you want to write
something, such as
introduction
Color palette
View
Setting
If you want to
write something
before next
question
To show picture
before next
question
To show video
before next
question
To create section
before next
question
To delete
question
To duplicate
questionTo previous
Google Forms
version
Other relevant
menu such as
shuffling order or
data validation
To send
completed
questionnaire
To view
responses in
summary result
16. Multiple Choice
16
• We select Multiple choice when we expect only one response from the question asked.
• In table that means responses will have total percentage of 100%.
•Google Forms summary responses will not count missing or empty data.
•In Splitter* there is an option to have percentage based on respondents (including empty data)
or just respondents with answers, similar to what Google Form provides.
•Other data will be coded automatically by Splitter, not only ones listed in forms.
Option can include ‘other’
which lets respondent fill in
other answer by
themselves.
‘Required’ should always be
selected if we want each
question answered.
Good idea to add Q1. or
some other form to
indicate question number
for easy reference
Type in option
Can have as many options
as you want, but consider
efficiency
*Splitter is Pivot Table for Market Research. Info on appendix
17. Checkboxes
17
• We select
Checkboxes choice
when we allow more
than one response
from the question.
• In table that means
responses will have a
total percentage of
more than or equal
100%.
18. Multiple Choice Grid
18
• We select
Multiple Choice
Grid usually when
we have a number
of questions with
similar answer
options. This
includes rating
using ordinal
scaling (liking scale
for example, from
dislike strongly to
like strongly)
Row is what
aspects to be
evaluated. Column is the ordinal
scaling to use.
In downloaded form data
spreadsheet however, the
row will be presented
column wise. Each row acts
as an individual question.
19. Linear Scale
19
• We select Linear Scale because we want respondents to give a number that represents their
evaluation about something from lowest 1 to highest. The highest number is free to choose.
The difference with the previous page is on the result
presentation, here we have numeric data, while previous
page, although the same rating purpose, has texts as the
result.
Label for lowest
and highest
Duplicate next question if
the same, just change
some question wording, in
this example processor and
camera
20. Checkboxes – Shown Multiple times
20
• On many cases we want to have association between something and other things, for example
brands with a set of images.
• This is the same case with using checkboxes shown multiple times
Duplicate the
question and
change the brand
21. Paragraph
21
• When we want respondents to answer in long wording or sentence, select Paragraph
• Usually the question is related with reasons for something
22. Short Answer
22
• Short Answer is for something short in text or number
Click here to show Data
Validation menu
23. Data Validation
23
• Input only accepted when meeting certain criteria
As an example here, we
will only accept response
a number between 5 and
1000
24. Skip Jump (1)
24
• In our example questionnaire we want to ask reasons for interested only to those who are interested to buy and
same case for who are not. Respondents answering certain answer go to a particular question. This is skip jump.
• In Google Form you can do this by creating section first.
• However, you can not do this before all questionnaire is completed, as where to go route has not been
established.
2. Press this
button to create
section for the
next section
3. This next
question
becomes another
section. And so
on for the next
question.
Interested to buy?
Yes No
Reasons yes ?
Reasons no ?
Right Price ?
Suppose this is
how we plan it
1. Go back to
where branching
will start
A “section” can
contain even only 1
question
1. Go back up to
where branching
will start
25. Skip Jump (2) – Completing the Go to Route
25
4. Go back again
to where
branching starts
5. Press this to
show ‘Go to
section based on
answer’. Select.
6. Now ‘Go to
which section’
shows, based on
their answer.
Select the proper
route.
8. At the end of each
section the ‘Go to section’
shows. Select the proper
route.
26. How It Looks (1)
26
Scroll device. Scroll device.
Can not go to the next
section if respondents don’t
fill required questions
27. How It Looks (2)
27
If Yes at previous section go
to here.
If No at previous section go
to here.
All are asked this final
question
29. 29
There are 2 menu that affects sending out :
1. In setting, still in the questionnaire before you click Send. This is
mainly to do with what the forms do after questionnaire is
completed by respondents.
2. After you click send. This is to do with how would you send it.
Another thing is related with collaboration on the questionnaire,
that is you asked someone else to work on the questionnaire and
not about filling out the questionnaire
Links provided
for another
response (Useful
for interviewers
carry device for
interviews)
Links provided to
edit, that is
respondent want
to go back to the
questionnaire
and do revision
Links provided to
view responses
of all the answers
that has been
provided by all
respondents
One respondent can only
answer one
questionnaire. Needs
Google account to login
When the 3 options are checked.
Links submit, to edit, and view
responses are shown here.
30. 30
1. Email a form
• Add the email addresses
• Click Send.
2. Get a link to a form
• Click the Link icon .
• Click Copy to copy the link that
appears
3.Embed a form on a website or blog
• Click the Embed icon .
• To copy the HTML that appears, click
Copy.
• Paste the HTML into your website or
blog.
4.Share a form on social media
• Choose any of the Google+, Twitter,
or Facebook icons.
• Follow the instructions to share the
form.
1 2 3 4
After clicking Link
icon, links shows
Check shorten
URL to get
shorter link form
Email address to send
as collaborators to
work on the
questionnaire
32. Responses (1)
32
Scroll device.
Scroll device.
3 responses from 3
respondents
Number of respondents so far
Number of
responses
In parentheses
is percent with
responses base
Number of
responses
Number of
responses In parentheses
is percent with
responses base
Percent with base
responses
Link to responses in Spreadsheet format
Data is continuously updated
every time new data comes in.
33. Responses (2)
33
Scroll device. Scroll device.
Number of
responses
Number of
responses
In parentheses
is percent with
responses base
Number of
responses
34. Responses (3)
34
Scroll device. Scroll device.
In parentheses
is percent with
responses base
Number of
responses
Percent with base
responses
Not required, empty is
allowed
Numeric data
40. • You want to know how much share is lost when you increase price and where it
goes. You also want to know how much is gained when price is lowered and where it
is from. This is how to do it:
1. Give set of options with corresponding prices.
2. Respondent is asked to choose product to buy
3. If they choose your product then price is increase. Repeat the step until they
switch to other product.
4. If they don’t choose your product then price is lowered. Repeat the step until
your product is chosen.
• In example in the questionnaire you are the owner of brand C / option no 3, see how
price is increased/lowered depending on respondent choice
• To view the questionnaire click this link
• https://docs.google.com/forms/d/1j6FJe8XJ2T455urnvYxr5rRiRdnc128yPHLmCTyG10g/viewform
• To copy the questionnaire to your GDrive click this link
https://docs.google.com/forms/d/1j6FJe8XJ2T455urnvYxr5rRiRdnc128yPHLmCTyG10g/copy
Pricing Simulation Using Google Forms
Google Forms Skip Jump Application
40
41. 41
Appendix 2 :
How to Add Geo Code to Google Forms
Add Info on Latitude, Longitude and Address (Street
Name and Number, City, State, ZIP Code, Country)
of a Device submitting Google Forms
42. GeoCode
Geo Code = Latitude, Longitude and its Address (street name and number, city, state,
zip code, country) of a device submitting Google Forms
42
Here example of
Google Forms
survey downloaded
as Excel.
Timestamp= when
the form is
submitted
These are Geocoding information that is added automatically to surveys
using Google Forms.
Available in three columns added to original questionnaire columns:
Geostamp = when Geocode link is clicked, longitude and latitude , and
address of device submitting questionnaire (street name and number,
city, state, zip code and country)
The link shows up after form submit as part of confirmation message.
The link should be clicked before proceeding to next respondent.
43. How to Add GeoCode
43
Copy and Paste script to your
Google Form script editor
Copy the link to Confirmation message
Publish > “Deploy as web app”
– will create a link
1 2
3 Click the link after form submit4
44. How to Open Script Editor
44
Click here
Window
shows up
Delete default
script, copy and
paste gs script
In Google Form editor
45. Copy and Paste this to Code.gs Script (1)
45
function doGet() {
return HtmlService.createHtmlOutputFromFile('Index');
}
function getLoc(value) {
var destId = FormApp.getActiveForm().getDestinationId() ;
var ss = SpreadsheetApp.openById(destId) ;
var respSheet = ss.getSheets()[0] ;
var data = respSheet.getDataRange().getValues() ;
var headers = data[0] ;
var numColumns = headers.length ;
var numResponses = data.length;
var c=value[0];
var d=value[1];
var e=c + "," + d ;
// the script will add device geocode data in last submit data row by clicking the link on confirmation page that shows up after hitting the submit button
// geocode data here consists of 3 columns : time to click the link, longitude & latitude and address (using reverse geocode)
// as long as clicking the link is done before next respondent submit button, data will be entered in the right row.
// however particularly for the case of multiple devices that submit data at about the same time then whichever device clicks the link closer to the last submit time, their geodata will be entered in
the last submit data row.
// this may leave geocode column in the row above empty. In this case the geocode data will be in red font
// If sometime later another device click the link then the geodata will be entered in closest missing geodata row. The data will also be in red font
// Therefore for red font data you may want to check manually after completion for correct geodata entry. In the questionnaire add question about address to help checking.
// script ini akan menambahkan data geocode pada row data terakhir yang disubmitdengan meng-klik link pada confirmation page yang muncul setelah kita mengklik submit
// data geocode disini terdiri dari 3 kolom : waktu mengklik link, longitude dan latitude, dan alamat (dari geocode)
// selama link di klik sebelum responden selanjutnya, data akan dimasukkan dalam row yang benar.
// tetapi jika untuk beberapa device yang mengklik dalam waktu hampir bersamaan maka siapapun yang mengklik terdekat waktunya dengan waktu data submit terakhir, data geocode dari device
tersebut dakan dimasukkan ke row terakhir.
// Ini akan mengakibatkan geocode untuk device lain di row sebelumnya kosong. Data geocode akan dalam font merah.
// Jika setelah itu device lain menekan link, data geocode akan dimasukkan dalam row kosong terdekat.
// Karenanya untuk data yang berwarna merah perlu di check secara manual setelah pengisian kuesioner. Untuk membantu checking bisa ditambahkan pertanyaan mengenai alamat di kuesioner.
if (respSheet.getRange(1,numColumns).getValue()=="GeoAddress") {
//fill data for second respondents onwards no missing geo data
// time here is Jakarta, you may need to change time to your local time (in GMT)
if (respSheet.getRange(numResponses,numColumns-2).getValue()=="" && respSheet.getRange(numResponses-1,numColumns-2).getValue()!="" ){
respSheet.getRange(numResponses,numColumns-2).setValue(Utilities.formatDate(new Date(), "GMT+7", "MM/dd/yyyy HH:mm:ss"));
respSheet.getRange(numResponses,numColumns-1).setValue(e);
var response = Maps.newGeocoder().reverseGeocode(value[0], value[1]);
f= response.results[0].formatted_address;
respSheet.getRange(numResponses,numColumns).setValue(f);
}
46. 46
//fill data with previous geo data missing. red font
else if (respSheet.getRange(numResponses,numColumns-2).getValue()=="" && respSheet.getRange(numResponses-1,numColumns-2).getValue()=="" ){
respSheet.getRange(numResponses,numColumns-2).setValue(Utilities.formatDate(new Date(), "GMT+7", "MM/dd/yyyy HH:mm:ss")).setFontColor("red");
respSheet.getRange(numResponses,numColumns-1).setValue(e).setFontColor("red");
var response = Maps.newGeocoder().reverseGeocode(value[0], value[1]);
f= response.results[0].formatted_address;
respSheet.getRange(numResponses,numColumns).setValue(f).setFontColor("red");
}
//to fill missing previous data. red font
else if (respSheet.getRange(numResponses,numColumns-2).getValue()!=""){
for (i = 0; i < numResponses; i++) {
if (respSheet.getRange(numResponses-i,numColumns-2).getValue()=="") {
respSheet.getRange(numResponses-i,numColumns-2).setValue(Utilities.formatDate(new Date(), "GMT+7", "MM/dd/yyyy HH:mm:ss")).setFontColor("red");
respSheet.getRange(numResponses-i,numColumns-1).setValue(e).setFontColor("red");
var response = Maps.newGeocoder().reverseGeocode(value[0], value[1]);
f= response.results[0].formatted_address;
respSheet.getRange(numResponses-i,numColumns).setValue(f).setFontColor("red");
break; }
}
}
}
else if (respSheet.getRange(1,numColumns).getValue()!="GeoAddress") {
//create labels in first row
respSheet.getRange(1,numColumns+1).setValue("GeoStamp");
respSheet.getRange(1,numColumns+2).setValue("GeoCode");
respSheet.getRange(1,numColumns+3).setValue("GeoAddress");
//fill data for first respondent
if (numResponses==2) {
respSheet.getRange(numResponses,numColumns+1).setValue(Utilities.formatDate(new Date(), "GMT+7", "MM/dd/yyyy HH:mm:ss"));
respSheet.getRange(numResponses,numColumns+2).setValue(e);
var response = Maps.newGeocoder().reverseGeocode(value[0], value[1]);
f= response.results[0].formatted_address;
respSheet.getRange(numResponses,numColumns+3).setValue(f);
}
else if (numResponses > 2){
respSheet.getRange(numResponses,numColumns+1).setValue(Utilities.formatDate(new Date(), "GMT+7", "MM/dd/yyyy HH:mm:ss")).setFontColor("red");
respSheet.getRange(numResponses,numColumns+2).setValue(e).setFontColor("red");
var response = Maps.newGeocoder().reverseGeocode(value[0], value[1]);
f= response.results[0].formatted_address;
respSheet.getRange(numResponses,numColumns+3).setValue(f).setFontColor("red");
}
}
}
Copy and Paste this to Code.gs Script (2)
47. 47
Still In Script Editor …
In File > New > Html file Create File > Enter new file name → Index
Delete default
script, copy and
paste html script
(next page)
File name = Index
Create html file
48. Copy and Paste this to Index.html Script
48
<!DOCTYPE html>
<html>
<script>
(function getLocation() {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(showPosition);
}
})()
function showPosition(position) {
var a= position.coords.latitude;
var b= position.coords.longitude;
var c=[a,b]
getPos(c)
function getPos(value) {
google.script.run.getLoc(value);
}
}
</script>
<body>
<p> GeoCode Entered </p>
</body>
</html>
49. Publish > Deploy as Web App
Create Link to Show on Confirmation Message
49
In Publish > Deploy as web app… Give your project a name (any name)
Important : Access to
anyone, so that everyone
who has the questionnaire
link can use the app.
This is the link that you’d
want to copy to Confirmation
message
A web app link is ‘file bound’ meaning that for a
link is unique to certain form/questionnaire.
New form will need new link.
51. Splitter Pivot Table for Market Research
51
Splitter is Pivot Table to analyze Google Forms survey data
in Excel.
Previous sections have shown how to create questionnaire,
send out questionnaires, view responses/results and
download survey data to Excel.
In depth analysis is often needed and there is no better
place than Excel. It also helps when you do reporting in
PowerPoint.
We have developed Splitter Pivot Table for Market
Research. With Splitter you can do:
- Cross tabulations : Analysis by segments
- Filter : Analysis on subpopulation
- Open end analysis : Processing answers from open end
questions, for text and numeric
Google Forms survey data downloaded as Excel
52. Splitter Versions and Main Functions
52
• Student version : Crosstabulations and filter Functions
• Analysis questions by segments and subpopulation
• Pro version : Text and Numeric Functions
• Analysis of open end questions text or numeric
• Pro X version : Diagnostic Functions
• To help find error and edit data entry
Version Basic Info Survey Tools Main Functions Price
Student
Analyze Survey data in
Excel.
For Student and Pro read
survey data mainly in text
while for Pro X for survey
data in code (code is
number representing
text/label options in
questionnaire).
For Excel for Windows
only
Downloaded from Google
Forms or Exported from
an Online Survey
Crosstabulation and
Filters for analysis by
segments and
subpopulation.
$2 for a month. 3 Days
free trial. Not a
subscription, not
automatically renewed.
Pro Downloaded from Google
Forms or Exported from
an Online Survey
Text and numeric
functions. To analyze
open end questions text
or numeric.
$12 for a month. 3 Days
free trial. Not a
subscription, not
automatically renewed.
Pro X Mainly from survey using
pen paper.
Diagnostic functions to
help find error and edit
data entry.
$17 for a month. 3 Days
free trial. Not a
subscription, not
automatically renewed.
53. Tutorial Links
53
Version Interface Tutorial Link Content
Student here
•Complete Tutorial in
pdf
•Link to download case
studies in Excel for
practice
•Link to download
program
•How to install
•Link to buy activation
code
Pro here
Pro X here
55. Collection of Google Forms questionnaires that you can copy to your Gdrive for free.
Click here.
Google Forms Questionnaires
55
56. 56
THANK YOU
MaxiResearch
PT. Mulia Karya Inovasi
Office 8, Level 18-A
Jl. Jend Sudirman Kav. 52-53 SCBD
Jakarta Selatan 12910
Indonesia
www.maxiresearch.com
ask@maxiresearch.com