Offboarding Surveys
Epic: https://github.com/FlowFuse/flowfuse/issues/3831
Description
We have the ability to cancel billing and delete accounts, but we are not learning anything about why users want to perform these actions. There are likely lots of learnings to be had here, and we should make sure we have presented the opportunity for a user to provide us with this feedback.
HubSpot forms are the obvious option here, as they're dynamic to build, and provide relevant reporting to us. However, the difficulty we have is how we build it with open-source FF in mind too.
A little bit of investigation needs to be done first to work out the workflow of including such a form, and the injection points or actions we want to trigger the form.
Questions to answer before development can start:
- Where are the forms configured (expected to be HubSpot)
- At what points do we want to prompt for offboarding forms? (delete team, delete account, cancel billing?)
- How to do we configure the forms to be included in FF?
Which customers would this be available to
Everyone - CE/Starter/Team/Enterprise
Have you provided an initial effort estimate for this issue?
I have provided an initial effort estimate
### Tasks
- [ ] FlowFuse/flowfuse#3853
- [ ] https://github.com/FlowFuse/CloudProject/issues/400
- [ ] https://github.com/FlowFuse/CloudProject/issues/399
@joepavitt who in the company can provide a leg up on getting started here? In particular, hubspot is an alien beast to me.
Additionally, any suggestions (from the POV of a product manager) on the types of questions & fields would be valuable.
So the way that Hubspot forms are used in the website is that you define the entire form in HubSpot, and then grab a JS file/formid that then loads that form into a pre-defined container, e.g. our contact-us form
But of this exercise would also need to be actually working through the billing cancellation and closing of a user account UX flow and to see if there are obvious points (and pages?) whereby the form could be provided.
The other option is that we do indeed build a hard-coded form into our UI, and then have HubSpot scrape it - this is what's currently done on the sign-up page, and HubSpot still gets all the relevant data for new customers, etc.
For the "Delete Account" flow, I'd say that once you've confirmed here:
You should be navigated to a dedicated survey page? Complexity then being how we configure that for open-source & FF-Cloud
For billing, the cancellation, I believe is done within Stripe, and I'm not 100% sure where the user is navigated back to once that's been accomplished?
Chatting with @knolleary - first iteration here can be a config to define a URL to go to when your account is deleted. That URL, in our case, can be the Hubspot feedback form? Fairly sure Hubspot can provide standalone forms via a URL, @robmarcer?
@joepavitt, yes that's doable in Hubspot.
Ahead of Steve picking this up next week, it'd be good to draft 4-5 questions we'd like to ask
The following are taken from a survey I wrote about 18 months ago:
With Q3 being changed to "Was there anything in particular that has triggered you cancelling your FlowFuse account?", or something along those lines, and us updating the answers to reflect new features and the standard s/flowforge/flowfuse - this could be a good starting point?
Need to decide whether this is a FlowFuse Admin setting, or yml option. The former makes more sense I think?
Quick question: Do we need to log who is leaving (deleting their account) and filling out the form? Is there an easy way to do this with HS? @robmarcer any ideas?
Worst case scenario we could an an additional email field on the form.
Have just had 1:1 with Serban, and made the call to switch this from @Steve-Mcl to @cstns as Steve is away til next Wednesday. Would also be a good chance for Serban to dive into DB/API pieces too.
Need to decide whether this is a FlowFuse Admin setting, or yml option. The former makes more sense I think?
@joepavitt @cstns It would be preferable to put this form in Hubspot, and make it very easy for non-dev employees to update. Can we just include a survey from HS for now?
Can we just include a survey from HS for now?
That's the plan mentioned above, I was referring to how we point to this form, and where that is configured.
Ah, ok. Great, and my bad!
I stumbled up a minor inconvenience which causes the application to glitch/flicker after the account is deleted. The issue is present on the login/logout actions as well due to how users are checked if authenticated, or lack there of.
I'll address this issue as well even if it's somewhat out of scope because it's impacting the behavior of the outboarding experience
I'll treat the logout flicker in a separate task as it's adding too much overhead to the current implementation.
Please open an issue, and link back to these comments @cstns
Reopening as there are some non-product tasks to complete on this.
are you referring to the incomplete e2e test?
@knolleary just updated the tasklist and converted the remaining items to GitHub issues.
are you referring to the incomplete e2e test?
@cstns think nick is referring to the creation of our form in Hubspot, and updating production to point to that form.
@cstns no. We still need to create the survey in hubspot and then configure production to redirect to it. I'm creating the issues for those tasks (linked in the description above) - but not on your plate to do right now.
got it!
All tasks complete - users are new redirected to a HS form when they delete their account.