Product Manager Neha Ahlawat Picture

This week on the Salesforce Admins Podcast, we’re talking with Neha Ahlawat, Product Management at Salesforce and the Product Manager for Custom Metadata. We dive into all things Custom Metadata: what it is and why you should care about it.

Join us as we talk about how Custom Metadata types can make your app more sophisticated, and why you shouldn’t fear the CLI.

You should subscribe for the full episode, but here are a few takeaways from our conversation with Neha Ahlawat.

Why Custom Metadata types are better than Custom Settings

“Custom Metadata types are custom versions of metadata that you, the customer or developer, can create and use,” Neha says. It works very similarly to a Custom Object, but it works like metadata, letting you unlock some powerful Salesforce features. With low code or no code, you can simplify common processes like replacing hardcoded data on validation rules and making them much easier to maintain.

In the past, you may have used Custom Settings to help you out, but Custom Metadata types have a few advantages that you should take advantage of. They’re reusable, because the rules of a Custom Metadata type are application metadata, allowing you to redeploy and package them for other purposes. There’s also better protection mechanics to cover not just the type, but the individual records. You can create relationships between Custom Metadata types, and even reference them in validation rules. “Basically, you can make an application a bit more sophisticated and customizable by using Custom Metadata,” Neha says, in ways you can’t do with Custom Settings.

Don’t fear the CLI

Neha and her team just released a CLI plugin for Custom Metadata types. “Do not fear the CLI, admins, it’s very simple to use,” Neha says, “it’s very simple to use those single-line commands that can allow you to do much more powerful stuff with Custom Metadata directly from the command line.”

You can bulk insert records for a Custom Metadata type, allowing you to add up to 10,000 records with one command execution. If you’ve been using the third-party Data Loader tool and run into some roadblocks, you might consider switching to the CLI plugin so you can get help directly from Salesforce.

New features for Winter ‘21 and beyond

With the Winter ‘21 Release, there are a few new things coming to Custom Metadata. The CLI plugin is out, but so is the ability to create relationships with the geolocation compound field. Looking forward, they’re trying to focus on bridging the gaps that exist between Custom Settings and Custom Metadata types to make it easier to switch over. 

Links:

Social:

Full Show Transcript

Mike Gerholdt: Welcome to the Salesforce Admins Podcast, where we talk about product, community, and career to help you become an awesome admin. This week, we are talking metadata with the Product Manager of Custom Metadata, Neha Ahlawat. In this episode, we will talk about, what is custom metadata? Why admin should care about it. Neha shares with us some sample use cases, why custom metadata is better, that’s right I said better, than custom settings and the importance of the Salesforce CLI plugin. Whew, that’s a lot. So buckle up and let’s dive in. Neha, welcome to the podcast.

Neha Ahlawat: Thank you.

Mike Gerholdt: I’m so glad our friends over at the developer pod, shout out to Josh Birk, could connect us because I was looking through our playlist and it’s been a long time since we talked to a product manager about custom metadata types. It’s one of those things that’s not overlooked by admins or aware of it and we love using it.
I can’t tell you how many packed presentations there were at all of the world tours when Vlad was presenting about custom metadata types. I feel like maybe he tricked us using his fancy colored pants to get us to pay attention to custom metadata types. But you are the new Shepard of customer data types so let’s dive right in. I think the first thing to start is, tell me what is custom metadata types?

Neha Ahlawat: Custom metadata types are… You’ve used metadata, right? Salesforce provides you standard metadata to use. Custom metadata types are nothing but custom version of those metadata that you, the customers, developers can create and use. So basically the UI is very similar to how a custom object looks, it feels almost as if you’re creating a custom object, but you’re actually creating a metadata type whose information, configuration, whose rules are all metadata and they can be moved around and treated like metadata. They are really your packagable, customizable, configurable application configurations that can be stored in your custom metadata.

Mike Gerholdt: Got it. I feel like I’m taking on a new puppy now. Why should I, as a Salesforce admin care about custom metadata?

Neha Ahlawat: Well, you should.

Mike Gerholdt: Got to feed the puppy.

Neha Ahlawat: Right. Exactly, yeah. Let’s do that. As an admin, I understand that you might not be writing a lot of complex code like a developer does but I can assure you, you are doing things in your day-to-day life that could be done much easier or much simpler by using custom metadata. For example, think of anywhere that you would have used hard-coded value to create validation rules or in formula or in flows.

Mike Gerholdt: Oh, yeah. Validation rules come to mind right away.

Neha Ahlawat: Yeah. Exactly, right? Something you do use on a day-to-day basis and you could replace all of that hard-coded data with a custom metadata and it will be so much easier to maintain and that is why you should care about it as an admin.
A very simple example, let’s say you have customers and you have categorized them based on their membership, like the purchasing they have made. So you have bronze category, you have silver and you have gold category and anywhere you create different validation jewels for different category members, you don’t always go back to check. Okay, if they are spending between, let’s say 0 to $50, they are bronze but if they’re spending from 50 to $100, they are silver so do this. But then let’s say tomorrow your rules change and say 0 to 75 is bronze, where all do you go back and correct that 0 to 75? Do you remember all of those cases?
That’s where you can just use a custom metadata to store that configuration information and anywhere you would have been referencing a bronze membership base, it will be updated, it will be reflected. As simple as that consider anywhere you use a hard-coded value, you could be using a custom metadata type to make your life simpler.

Mike Gerholdt: I feel like I needed this about 10 years ago when I was doing a lot of validation rules.

Neha Ahlawat: Definitely.

Mike Gerholdt: You bring up a good use case and this happens a lot, right? Like a bronze customer… Being a frequent flyer for the last few years, the points, all of a sudden I would hit a certain amount of points like, “Sweet, I’m going to hit the next level.” Like, “Oh, by the way, we changed the level on you.” Your example is spot on and I got a feel some admin in the back room is sweating. When I had to do or make changes to stuff like that, I used to use custom settings in Salesforce. Can you help me understand custom metadata types over custom settings.

Neha Ahlawat: Right. Yeah, I can. You are right to say that when you think of those things, you might have used custom settings to do that in some places. But custom metadata types have some other far more advantages than custom settings. First of all, the data inside custom metadata is metadata, basically the rules of a custom metadata type is metadata. So you can retrieve, deploy it, you can package and install it, something you cannot do with custom settings.
Custom metadata has a very sophisticated protection mechanism. Not just that type but even the individual records can be protected, something that’s not available to you with custom settings. You can make an application basically a bit more sophisticated and customizable by using custom metadata. Some of the other things are, you can create relationships with custom metadata, something you cannot do with custom settings. Let’s say similar to what that the example I gave, right? The bronze, silver, gold category.

Mike Gerholdt: Uh-huh (affirmative).

Neha Ahlawat: Let’s say you also have some other criteria for having these tiers. You could create another custom metadata type to store some of those different criteria and then create relationships between these two custom metadata types to bring together a much more complex tier system for your customers. But with custom settings, you can’t create those relationships between different types. That’s something powerful you can do with custom metadata. You can reference them in validation rules, formulas, something you cannot do with custom settings. I think there’s a lot more functionality with custom metadata.

Mike Gerholdt: Absolutely. Well, I also like your analogy of it makes your app more sophisticated. I’m feeling like I’m moving up from maybe a Velveeta cheese to like a aged Swiss or something or moving up in the world, getting a little more sophisticated with our app building. I know a lot of admins use the Salesforce CLI plugin, can we use that for custom metadata types?

Neha Ahlawat: Oh, definitely. Yes. I liked that you brought that up. We just released a CLI plugin for custom metadata types. It came out for CLI version 49. We talked a lot about it in the development podcast.

Mike Gerholdt: Oh, I’ll link to that.

Neha Ahlawat: There’s a blog there that I wrote talking about how and why you should use the CLI plugin. But I’m so glad you brought it up because, do not fear the CLI, admins, it’s very simple to use and if you’re using it, great. If you have a great developer relationship where a developer can just set up and I can give you. It’s very simple to just use those single line commands that can allow you to do much more powers to stuff with custom metadata directly from the command line.
Wow. I don’t fear the CLI. That I think is the shirt that we need to start making for admins, don’t you agree?
Yes, I shouldn’t take credit for it though. I think it’s somebody’s blog post title, I don’t remember who exactly right now but I have seen it somewhere. But I found it very apt to use it in this specific situation that we’re talking about, that I had been [inaudible 00:00:10:18].

Mike Gerholdt: Maybe it’s a Peter Chittum kind of thing.

Neha Ahlawat: Yes, I think so. Yeah.

Mike Gerholdt: I feel like he would do something like that. Let’s play podcast Bingo here of how many developer evangelists we can mention on the admin podcast, see if we get Bingo. So is there anything else about the Salesforce CLI plugin that admin should know?

Neha Ahlawat: Yup. Yeah. One of the commands in the plugin, I think we can make, inserting custom metadata type records much more easier for the admins. I don’t know if all the admin hearing this know this, but you can bulk insert records for a custom metadata type, which is a huge win in itself. With our CLI plugin, you can insert up to 10,000 records for a custom metadata type in one command execution. All of this is because it’s metadata, so all the metadata limits apply. All the limits that apply for regular metadata operation apply to the custom metadata sites.
Now what’s in it for admins? They might have been using the Data Loader tool to do that for a long while now and whenever you have some roadblocks you hit with the Data Loader tool, you reach out to us and we can’t do much about it because it’s a third party tool. Well, now we have our own plugin that you can actually use and then get back to us with any issues that you have and we maintain it and we will fix it for you. That’s a huge win in respect to the Data Loader as such and then with Data Loader, you could insert only up to 200 records, synchronously, and with the CLI command, you can do 10,000. So I think that’s a big, big increase right there.

Mike Gerholdt: That’s like a whole day. 200 records at a time, 10,000, there goes your Sartuday.

Neha Ahlawat: Yeah, right. It could take that long, it could easily take that long. Yeah, if a developer has set up an org for you set up SFDX for you, it’s not that difficult. It’s just one command, record, insert and you just have to provide the CSV file name and you can insert a lot of records in one command execution into your custom metadata type.

Mike Gerholdt: One of the things to think about, it’s October. A lot of looking ahead into winter, which for most of us means colder, not everyone. But I know there is new things in the winter release for custom metadata and I would love for you to highlight some of that.

Neha Ahlawat: Yeah. So as I mentioned, the CLI plugin came out with the winter release. Actually with CLI version 49 was timed around the winter release and then we released the capability of creating relationships with the geolocation compound fields. So admins can now go into the entity particle of geolocation compound for you to create relationships. That’s something nice that came out and yeah, we continue to work on some exciting features for upcoming releases.

Mike Gerholdt: Well, I know you can’t speak to too many, but let me ask a vague question.

Neha Ahlawat: Mm-hmm (affirmative).

Mike Gerholdt: As the PM for custom metadata types, what are the things that you’re thinking about in terms of releasing in the product?

Neha Ahlawat: Right. Because you asked me the question about comparison between custom settings and custom metadata and how and why you should be using custom metadata, instead. I can tell you that in our upcoming next few releases we are trying to focus on bridging some of the gaps that existed between custom settings and custom dates.
So everyone can more confidently switch to custom metadata type and not miss anything about custom settings. You will see a lot more around that coming up, something that could be of developer interest its ecstatic accessor’s, that’s coming out in the immediate next release. But then there are a lot of other gaps that we are working on and you will eventually see them roll out.

Mike Gerholdt: Forward looking statement.

Neha Ahlawat: Yes, definitely. Always that.

Mike Gerholdt: I’d love to know, I shifted the conversation to jump right into product and talk about everything because I’m so excited to have you on the podcast and I kind of skipped over moving it towards the end. But I’d love to know how you got into being a product manager at Salesforce? And maybe some of the things that you’re super excited about on our platform.

Neha Ahlawat: Yeah. I was a developer here and engineer with one of the platform teams. I’ve been with Salesforce for three and a half years. For almost three years, I was an engineer and then around seven months back I just generally started thinking about my career progression and was weighing different possibilities.
I talked to the then product manager on my team and I really liked what she was doing. The amount of customer interaction she had and bring back feedback to the team and be able to shape product direction. That was something exciting for me, something I could picture myself doing. When an opportunity came through, I just jumped ship.

Mike Gerholdt: Yeah, that’s great.

Neha Ahlawat: I’m happy that everyone around me was very supportive. Yeah, it was just weighing different career options and I seem to like what a product manager does.

Mike Gerholdt: Yeah, no, that’s super, super interesting. Because I know as a product manager, you juggle a lot of priorities and feature requests and it can be a lot. You want to put the best of everything out there.

Neha Ahlawat: Yes, yeah. You have to put the best interests of everyone together to put the best features out there. For me, that seemed an exciting task to do.

Mike Gerholdt: Awesome. Well, I am glad we had you on the podcast to sit and talk about, well, we covered a lot, custom metadata types, CLI plugin, it’s been awhile, I think Vlad’s been traveling, he did the Low Code Love Event earlier this year. So we haven’t caught up with all of the really cool things that you could do. Let’s see how little more advanced on our platform and I’m glad that we were able to tackle custom metadata types and custom settings and it sounds like there’s some really cool functionality in the future coming for that. Thanks so much for being on the podcast.

Neha Ahlawat: Yeah, thank you so much. Thank you so much for having me and I definitely was excited to be here and have this opportunity to talk about custom metadata types from an admin point of view.

Mike Gerholdt: Oh, it was great to have Neha on the podcast and I love talking about all of the advanced admin features that we have available on the platform, it’s been a while since Vlad was on maybe we need to get him back. But two things that stood out in our conversation, one custom metadata types make your app more sophisticated and you know what, who doesn’t want a sophisticated app? Just because we’re admins doesn’t mean we don’t get sophisticated apps, so custom metadata for the win.
I love what she said and not taking credit for it at all. Don’t fear the CLI. I believe developer evangelist Peter Chithum coin that, perhaps it’s been on a shirt somewhere but command line interface, it’s the next frontier for us. Now, if you want to learn more about all things Salesforce admin go to admin.salesforce.com to find more resources.
And as a reminder, if you love what you hear, be sure to pop on over to iTunes and give us a review, it helps admins find the podcast. You can also stay up to date with us on all things social for Salesforce admins, we are @Salesforceadmns, no I on Twitter. You can find our guests Neha on Twitter, she is at, and I’m going to spell it for you, H-L-A-W-A-T_N-E-H-A, don’t worry I’ll put the link in the description. Of course, you can find me on Twitter, link in the description @mikegerholdt and Gillian Bruce who also hosts the podcast @gilliankbruce. Stay safe, stay awesome, and stay tuned for the next episode. We’ll see you in the cloud.

Love our podcasts?

Subscribe today on iTunes, Google Play, Sound Cloud and Spotify!

Salesforce Admins Podcast cover featuring a woman's photo and a cartoon mascot holding a phone, with text on diversity in tech

Unlocking Diversity in Tech: a Deep Dive with Kat Holmes & Josh Birk

Today on the Salesforce Admins Podcast, Admin Evangelist Josh Birk sits down with Kat Holmes, Chief Design Officer and EVP at Salesforce. Join us as we chat about diversity, accessibility, and her book, Mismatch: How Inclusion Shapes Design. You should subscribe for the full episode, but here are a few takeaways from our conversation with […]

READ MORE