Gainsighta design exercise
Survey Engine · Gainsight design exercise

Survey Engine

Build survey creation into the platform — so a CS team never leaves to ask a question.

Gainsight is a customer-success platform: its job is reducing churn and growing accounts. I was asked to design survey creation directly into it — living inside Salesforce — so teams never have to leave the tool to ask their customers a question. This walks the thinking and the full survey lifecycle I designed.

the survey lifecycle
1Create2Design3Distribute4Close
UX designCompetitive analysisPlatform-constraint researchWireframing → hi-fidelitySalesforce LightningGainsight · design exercise
01The prompt

A question, not a backlog.

No wireframes to inherit, no research repository, no existing surface to bolt onto. Just a business question — and the expectation that I could reason my way from there to a design.

“How would you build a platform that lets you survey users as part of the tool suite?”
02The seam

Every handoff out is a seam.

Surveys — NPS, CSAT, health checks — are core to customer success: the feedback loop that tells a team where a relationship actually stands. Today, running one means leaving the tool your customer data lives in. If you’re the platform CS teams live in all day, sending them to a separate vendor is a real seam — friction at every handoff, and a real reason for their attention and their data to leave your product.

Inside the platform

The single source of truth

Customer relationships, health scores, and account data — all in one place.

Leaving for a vendor

A separate tool, by hand

Stand it up, manage it, and pull results back manually — every handoff a place the source of truth quietly falls apart.

03The goal

Scoped to stay buildable.

I set the goal deliberately narrow so it stayed buildable rather than aspirational. Not reinvent SurveyMonkey. Not own the category. Close the loop — so users never leave to create and maintain surveys.

Create

Stand up

Start a new survey from inside the platform.

Send

Distribute

Publish to the right participants.

Edit

Revise

Change questions, logic, and drafts in place.

Remove

Retire

Close surveys cleanly to a closed tab.

…for multiple surveys — a portfolio and its lifecycles, not a single form. Scoped to what a first version needs, not what would be nice to show off.

04The hypothesis

I checked my own premise first.

The working hypothesis was straightforward — and I want to be honest about the weakness in it, because interrogating it became the most useful part of the project. So the first real move wasn’t design. It was talking to a few current users to confirm the need and pressure-test which capabilities actually mattered, rather than designing to a wish list I’d invented.

“Users want to create surveys from Gainsight because it makes their lives easier.”Baked into that sentence: an untested assumption that people would adopt it — justified by reasoning, not yet by anyone. The classic trap.
05Competitive analysis

Borrow the patterns users already carry.

I studied SurveyMonkey and other established engines — not to copy, but to learn the conventions people already expect, so anything I put inside Gainsight would feel native instead of foreign. Meeting people at the patterns they know is the cheapest usability win available.

Question types

The vocabulary people already reach for.

Build → distribute

The two-step flow users expect.

Edit & version

Revise without starting over.

Manage many

Several live surveys at once.

Guiding principle → create, send, edit, and remove multiple surveys.

06The constraint

The hard part wasn’t the survey. It was the platform.

Gainsight lived inside Salesforce — its own structure, components, and rules about what you can and can’t do. Before I could draw a single screen I had to learn where the feature could sit and what the platform would actually let me build. I had functional requirements from the Product Owner — the what. The how was on me. So I worked through Salesforce’s own developer documentation and designed from what was real.

From the Product Owner

Functional requirements — the what.

On me to figure out

The how — in Apex + Lightning.

Reading developer docs before wireframing is what keeps a concept from dying in an engineering review.
The process

How the concept came together.

Judgment up front, production last — each step earned the next.

01 · Check the premise
Talked to real users before drawing anything.
02 · Competitive scan
Borrowed known patterns from SurveyMonkey & co.
03 · Platform research
Read what Apex + Lightning would actually allow.
04 · Wireframe
Mapped the full survey lifecycle, end to end.
05 · Hi-fidelity
Realized the screens in Salesforce Lightning.
07Information architecture

The survey lifecycle, mapped.

With the premise checked, the patterns borrowed, and the platform’s real capabilities mapped, the concept resolved into a sitemap. You enter the Survey Engine once — Active, Drafts, and Closedare views inside it, each with its own set of actions. Duplicating a survey drops a copy into Drafts. This is what makes “create, send, edit, and remove multiple surveys” legible as an actual interface rather than a description.

Salesforce platform
Survey Engine— you enter here
Create new → Draft
Active
Design · Preview · EditPublishDuplicate · Close
Drafts
Design · EditPublishDelete
Closed
ViewDuplicate → DraftsAnalyze

From sketch to wireframe — the survey homepage

wireframe — active (dates + response rate)
salesforce⌂   Surveys   Contacts   Reports   ⌕
Surveys
ActiveDraftsClosed⊕ Create New
Title ▽
Start date ▽
End date ▽
Response rate
Actions
Title
1/1/2014
1/2/2014
1/100 (1%)
⚙ ▾
Title
1/1/2014
1/2/2014
50/100 (50%)
⚙ ▾
Title
1/2/2014
1/3/2014
25/100 (25%)
⚙ ▾
Title
1/2/2014
1/3/2014
1/7 (14%)
⚙ ▾
Title
1/2/2014
1/4/2014
3/10 (30%)
⚙ ▾
Title
1/2/2014
1/5/2014
1/1 (100%)
⚙ ▾
Row menu is contextual to the tab · sortable by clicking a header
wireframe — drafts (contextual row actions)
salesforce⌂   Surveys   Contacts   Reports   ⌕
Surveys
ActiveDraftsClosed⊕ Create New
Title ▽
Description ▽
Actions ▽
Title
WIP-test
⚙ ▾
Title
WIP-tosp
⚙ ▾
Title
WIP-test 3
⚙ ▾
Design
Edit
Publish
Delete
Preview
Title
WIP-test 4
⚙ ▾
Title
WIP-test 5
⚙ ▾
Drafts-tab actions: Design · Edit · Publish · Delete · Preview

The Salesforce-hosted survey homepage — one list with Active / Drafts / Closed tabs and tab-contextual row actions, built up from the hand-sketch sheet.

The five screens

Wireframe first. Then Salesforce Lightning.

Each step of the lifecycle, shown twice: the low-fidelity wireframe that proved the flow, and the same screen realized in Salesforce Lightning — the platform’s own global bar, page header, cards, and status pills. Designing where the data already lives is the whole point.

08Create a surveyBefore · wireframeAfter · Lightning
before · wireframe
Survey · new
Name
Q3 NPS pulse
Unique ID
auto · SRV-…
Start date
1/1/2025
End date
1/31/2025
Description
Short internal note…
Thank-you
Thanks!
Redirect URL
/thanks
CancelSave
after · salesforce lightning
Survey EngineSurveysReportsSetup
Survey
New Survey
CancelSave
Survey Name
Q3 NPS pulse
Unique ID
SRV-10428
Start Date
1/1/2025
End Date
1/31/2025
Description
Quarterly relationship pulse for enterprise accounts.
Thank-You Message
Thanks for your feedback.
Redirect URL
gainsight.com/thanks

Creating a survey — the settings that scope it: name, unique ID, start and end dates, a description, a thank-you message, a redirect. The wireframe proved the flow; the Lightning version realizes it as a standard record page with the platform’s own global bar, header, inputs, and actions.

09Design a surveyBefore · wireframeAfter · Lightning
before · wireframe
Survey designreorder ⇅
Question 1 [ edit ]
PromoterPassiveDetractor
+ add logic — rules display here
Question 2 [ edit ]
Open text · one line
+ Add question
after · salesforce lightning
Survey EngineSurveysReportsSetup
Survey Builder
Q3 NPS pulse
PreviewPublish
DraftIn ReviewScheduledPublished
Question 1 · Rating 0–10Edit
How likely are you to recommend us?
78910
Question 2 · Long textEdit
What’s the main reason for your score?
+ Add Question+ Add Logic

The builder: reorderable questions, inline answers, and branching logic. In Lightning it becomes the platform’s global bar and page header, a status path from draft to published, and questions as Lightning cards — designing where the customer data already lives.

10Distribute & publishBefore · wireframeAfter · Lightning
before · wireframe
Distribute · participants
Segment · Enterprise Account · All
NAMEEMAIL
A. Nolana.nolan@acme.co
R. Vegarvega@northwind.io
M. Itom.ito@lumen.com
List · 3 addedSave list
after · salesforce lightning
Survey EngineSurveysReportsSetup
Distribution
Q3 NPS pulse
Unpublished
Segment: Enterprise Account: All
NameEmail
A. Nolana.nolan@acme.co
R. Vegarvega@northwind.io
M. Itom.ito@lumen.com
Email Template
NPS invitation
Save ListPublish

The wireframe builds the participant list from filtered contacts; Lightning realizes it as a standard list view with row selection straight from Salesforce contact data, a publish status, and an email template — no export required, because the audience is already in the platform.

11Manage the portfolioBefore · wireframeAfter · Lightning
before · wireframe
SurveysCreate new
ActiveDraftsClosed
TITLERESPONSESACTIONS
Q3 NPS pulse742 · 82%edit · close
Onboarding CSAT318 · 64%edit · close
Renewal health check96 · 46%edit · close
Close survey
Unavailable for future responses. Continue?
CancelClose
after · salesforce lightning
Survey EngineSurveysReportsSetup
Surveys
All Active
New
ActiveDraftsClosed
Survey NameStatusResponsesActions
Q3 NPS pulseActive742 · 82%
Onboarding CSATActive318 · 64%
Renewal health checkEnding96 · 46%
Close survey?
This makes “Q3 NPS pulse” unavailable for future responses. It will move to the Closed tab.
CancelClose Survey

One list, three tabs, and a guarded close action. The Lightning version realizes it as a standard list view with status pills, row-level actions, and a real confirmation dialog — the whole portfolio of surveys in one native place.

12Analyze the resultsConcept · proposed next stepBefore · wireframeAfter · Lightning
before · wireframe
Q3 NPS pulse — resultsExport
NPS
+42
Responses
742
Rate
82%
Distribution
Promoters 58%Passives 26%Detractors 16%
Comments
“Rollout support was excellent —”
“Reporting still feels slow to —”
“Our CSM is the reason we —”
after · salesforce lightning
Survey EngineSurveysReportsSetup
Survey · Results
Q3 NPS pulse
Active · 82% responded
Net Promoter Score
+42
▲ 8 vs. Q2
Response distribution
58% Promoters26% Passives16% Detractors
Response rate over time
Wk 1Wk 3Wk 6
Recent comments
“Rollout support was excellent.”
“Reporting still feels slow.”
“Our CSM is why we renewed.”

The loop the whole feature exists to close. This screen was scoped as the next step rather than drawn at the time, so it’s shown as a concept: a headline NPS score, a response-rate read, the promoter/passive/detractor split, a trend, and verbatim comments — read natively, so answers land where the customer’s account data already lives instead of a vendor’s dashboard. Values shown are illustrative.

13Learnings

Two things stuck with me.

The technical muscle

Design inside a platform you don’t control.

Achieving a new capability within Salesforce’s boundaries is a very different muscle from a greenfield canvas — and the more valuable one to have.

The process muscle

Distrust the “obviously useful” feature.

It’s easy to fall in love with a feature and skip asking whether it’s wanted. Catching that in my own hypothesis made the concept stronger for being suspicious of itself.

Where it landed

A one-sentence business question, turned into a scoped, constraint-aware concept — designed to live natively inside Salesforce.

The value was the thinking and the constraint work: taking a broad prompt and turning it into something a team could pick up and build — create, send, edit, and remove multiple surveys, without ever leaving the platform. The full survey lifecycle, wireframed and then realized in Salesforce Lightning.

Honest framing: this was an interview design exercise, so there’s no launch or metric. The intended measure, had it shipped, was feature adoption — did teams create surveys here instead of leaving for a vendor.