I know that everyone at RMS is terribly excited about one of the latest new feature of Marketo: allowing the creation of custom objects.
But are custom objects really a good thing?
In the hands of an expert. Undeniably, yes.
But in the hands of an inexperienced consultant or someone sucked into doing advanced things without realising the power … ooooh boy, things are going to get hairy.
Let’s think back to the Salesforce days when the same feature was enabled. It was early in the history for Salesforce, George W. Bush had just taken power and I was still in short trousers. For Salesforce it was to be a game-changer. People who had Salesforce were now able to customize Salesforce beyond their wildest dreams. They were able to build applications and store their own data alongside the SFDC data. You would think that that was a great thing for all concerned wouldn’t you?
The upside of Custom Objects
For SFDC, the benefit was an explosion on the Appexchange – people began building add-on tools to SFDC – stuff that SFDC didn’t do and which could be executed because SFDC allowed the storage of data within the SFDC instance. Think of your favourite Salesforce App – such as Dupecatcher or Conga. When you install these packages, new custom objects are added to your instance to store information about what the App is doing. It’s a necessary thing – they get added invisibly and you trust the App, right?
The addition of Custom Objects was awesome for all concerned.
The downside of Custom Objects
However let’s analyze some downsides here. And we see them every day.
People who had little-to-no training were now building IT systems. People who did not know what a database schema really should look like were suddenly empowered to build a computer system [almost] from scratch.
And perfectly devised objects working in unison [LEAD, ACCOUNT/CONTACT, OPPORTUNITY, CONTRACT, PRODUCT etc.] were now able to be disrupted “embellished” and modified.
When one of our customers approached us a few years ago — they had literally millions of records … all inside of a bastardized version of the standard OPPORTUNITY object and which linked to five custom objects – which had all been developed over time to replicate things such as PRODUCTs and CONTACTs – which of course they couldn’t use because they’d cannibalized the standard functionality of OPPORTUNITY three years before !
On this single object was everything. It was *all* on OPPORTUNITY – customer name, email address and all those custom objects linked via lists – essentially replacing much of the standard functionality that Salesforce includes out-of-the-box! Crazy.
Another of our clients – a major household name in electronics had wasted many hundreds of thousands of dollars of building custom objects inside of Salesforce customing ‘because they could’.
Just because you can build a custom object – doesn’t mean you should
Yes it’s exciting and powerful — but fight the urge to customise until you have little alternative. The examples above should give you power to resist the urge. What BOTH of these customers found was that – when they bought an additional tool [in both cases a 3rd party best-of-breed marketing automation tool] it just didn’t work right. The reason was that the 3rd party tool wasn’t expecting the Salesforce instance to be made up of spiders, glue and bits of string with sticky tape.
DONT let this happen to you — and before you decide “yes, lets add a new custom object into Marketo” consider the downside … you’ve been warned. It is vital that you do not allow the structure of your back-end database to get out of control. It is possibly the most significant and most important thing you do to ensure that you don’t let it get out of control.