With all the data privacy regulations and the rise of hacking horror stories with ransomware and customers' data leaks, everyone in the digital space is starting to pay a lot more attention to data security.
When you run a website and has some forms to capture sales or support inquiries, or lead generation content, where should you store the customer data that has their name, their email and all the personal data that they're submitting?
Is it really safe to store that in your content management system?
Web forms and CMS
In our agency, we build content management systems with tools like Drupal and WordPress. Both of them have very powerful forms module, allowing editors to build new pages for their website and insert contact forms very easily. By default, the data being submitted by the end users on the front end of the website gets stored in the same database as the content management system, as the web content.
That brings a bit of a risk to the business because content editors might be accessing very confidential data from the same admin area, and it's not necessarily their role.
So how can you approach that? What should you do?
Considering the UX of web forms
Before you even think about where the data should be stored, take it back to the UX planning and review what data you actually need to capture. The GDPR regulation suggests the concept of data minimalisation, so you should only capture what you really need. Then you can make it clear in your design to the end-users, not to pass personal information anywhere except where it's required.
Where to store customer data?
Then from the implementation, it really depends on your company-wide workflow and how you need to process that data. Let's explore various options.
- The first one is to send the form submission by email. I would recommend NOT to do that. You cannot control any access of it. If customers are asking for their data to be deleted in the future, you will never be able to find all those emails. Unless your engineers come with some complex mailbox rules, it's just going to be a pain to manage. Avoid that at all cost.
- The second option is to store that data in the content management system, as we explained earlier, the default option. I think that can be safe as long as you secure your content management system. When you have public content on a website and confidential customer data in the same database, they'll have different security classification.
This is why you need to make sure that your CMS has proper access controls and named users configured with the right privileges. You also need to secure the hosting infrastructure to isolate the database. It's more advanced than your cheap cloud hosting option because you need to think about data retention, how the backups will be managed, how you will extract the database to other testing environment for development purposes... There's a lot to consider here, but it's possible.
- The third option and much safer way of doing it, is to push that data to an external CRM or customer relationship management tool. A CMS, as its name claim, is to store content and less about data. This is what the CRMs are for, and you can integrate with an API: you can push data from the CMS form to an external system. That's better suited to manage that. The CRM would obviously need to have the same strict security and access management settings.
- The fourth and the last option, the ultimate option, is to use a customer data platform like Acquia's CDP. That platform allows you to unify all of the customer data across all your channels online and offline, all in one place. That can unlock many different features for marketing automation, better customer service... and when you have all of that in one place, you can even use AI to recommend the next best action and better serve your users.
Scaling from CMS to CRM
At the end of the day, it's all about risk management. If your hosting platform is secure and you have the right permission rules for access, then storing data in the content management system can be a suitable option for an MVP as the first solution.
But to ensure that you can scale, I recommend using a better tool to manage it. This is when you need to consider moving to a CRM system. With the right integration between the two, you won't have any data silos and the compliance aspects will be much easier... everyone will sleep better at night!
If you have any question about data security or need support with the transition to a CRM solution, just get in touch. Don't forget to subscribe to my YouTube channel and follow me on Twitter to keep learning with me and grow your career in digital.
Until next time, stay safe and see you soon.