The Plytix Blog

PIM Tricks: How to Automate Your Product Data Transformations | Plytix

Written by Mikey Boyle | Feb 5, 2024 3:17:51 PM

Hard truth time: distributing data to multiple channels and platforms sucks. All the regular challenges of running an online store get multiplied, since you’ve got:

  • Multiple formats to deal with
  • Multiple product lists
  • Multiple data entry requirements

…and a whole bunch more. That’s why if you’re not careful, the simple task of getting your product information where it needs to be and in the right format will take up way too much of your time, effort, and sanity. So what’s the solution?

PIM software

First things first: get yourself some Product Information Management (a.k.a. PIM) software. In case you’re not familiar with this tech, this is software that can get all your product data in one place, fix any completeness or consistency issues once it’s there, and then help you prepare it for export to all the different places that you’re selling or marketing your products (a.k.a. channels). To take advantage of the handy PIM tricks in this article, you’ll also want to make sure your PIM software of choice has computed attributes or at least a feature with a similar function.

What are computed attributes (and why should I care)?

But what are computed attributes, you ask? Well, at its core a computed attribute is essentially a formula that you can use to get your PIM tool to transform your data for you at the moment of export—exciting stuff, right? It’s actually a game-changer though. This feature means you can use one version of your data for multiple channels and purposes, since it can be automatically adapted in multiple ways without affecting the original data.

Still not convinced? Let’s look at an example that’s sure to turn some heads.

Plytix swag = so fetch.

Imagine you’re selling this swanky sweater in your brick-and-mortar store, on your own webshop, and on Amazon. You’re going to need different product labels for each situation, right? Since customers in your physical store can see the product for themselves, the tags on your in-store sweaters might just say:

[Classic Crewneck Sweater]

On your webshop, though, customers will need a little more information, so for the title of your sweater’s product page you might have something like:

[Classic Crewneck Sweater, Unisex, 100% Cotton]

Then for your Amazon listings, you’ll want to include your brand name plus some more info for SEO purposes, so maybe something along the lines of: 

[Plytix Classic Crewneck Sweater, Unisex, Multicolor, 100% Cotton, XS-XXL, Long Sleeved, Casual Style]

(And while we're on this topic, for more information about optimizing your listings for Amazon and other marketplaces, you can check out our handy ebook right here.)

Now while you could just create a separate attribute for each of these in your product information database, doing that yourself for each and every one of your products is going to take… well, how many products and variants are in your catalog? Multiply that number by however long it takes you to write a label/title, and there’s your answer. Oh, and look forward to doing it all again if any details change about your products.

So, it’s going to take time. Rather than manually writing all those labels and titles yourself, though, a much faster solution would be to use a computed attribute. This way, you can get your PIM tool to do the work for you, and automatically create different versions of your titles for all of your products, that will update themselves in the event of any future changes to the relevant data. 

Gotta love editing product information "on the clock".

How do computed attributes work?

To use this function, you start by feeding your PIM tool a formula (in our sweater tag example the CONCAT formula would be the one to go for, but more on that story later). Your PIM software will then apply that formula to your data and generate a new output value at the moment of export. The new output value won’t appear in your database and take up space there, it’ll just appear on whatever channel you’re sending your data to, which is super convenient for all those values that you only need for one specific marketplace or platform.

On that note, though, there is a clever trick you can do where you feed those output values back into your PIM system. This gives your PIM tool some more functionality, and can be useful for various reasons—like if you want to edit your computer-generated attributes once they’ve been created, for example.

Continuing the topic of clever tricks, we come to the next section, where I’m going to take you through everything you need to know about some of the most popular computed attributes: what they do, what they look like, and how our users make use of each one. These are just some of the top examples though—for a full list, you can check out our Formula Cheat Sheet and Guide, or you can also speak to someone at Plytix, too! Our team’s always happy to chat about formulas and their functions (we’re super cool like that). 

#1: MULTIPLY/DIVIDE

Let’s kick things off with some basic arithmetic. No great surprises here—as you might have guessed, the MULTIPLY and DIVIDE functions tell your PIM tool to multiply or divide a numerical attribute, either by a number or by another attribute.

What it looks like in action

MULTIPLY($ATT.PRICE,0.9)

  • The output value would be the attribute “price” multiplied by 0.9.
    • E.g. 50.00 → 45.00

DIVIDE($ATT.PACK_PRICE,$ATT.UNITS)

  • The output value would be the attribute “pack price” divided by the attribute “units”.
    • E.g. If units = 6, for example, then 300.00 → 50.00

Typical use cases

Naturally, there are multiple uses for these functions—some of the most common ones would be: 

  • applying price increases/decreases
  • currency conversions
  • calculating the price per unit/kg/100ml etc.
  • adjusting specifications for multipacks
  • adding total dimensions (e.g. volume)

…and pretty much any other time when you might want to multiply or divide a numerical attribute for your products. Combine this operation with other functions, like we’ll see later on, and the possibilities for automation are immense. Enough said!

Computed attributes are basically magic (just saying).

#2:  DLOOKUP

Remember VLOOKUP, from the bad old days of using Excel for everything? (Apologies if you’re still in those bad old days, our thoughts and prayers are with you 🙏) Well, DLOOKUP is kinda similar, except you set your own “dictionary.” Basically, you give the PIM tool a list of new values to swap in for what’s currently listed in your database—you’ll see what I mean in the example here.

What it looks like in action

DLOOKUP($ATT.COLOR, {"red": "scarlet","blue": "azure"}, “other”) 

  • This would create an output value of “scarlet” for any products with the color “red”, “azure” for any listed as “blue”, and “other” for any other values. 
    • E.g. red → scarlet; green → other

Typical use cases

As you can see in this example, this function is great for adjusting your word choices for whatever reason comes up, such as:

  • Meeting data entry requirements for specific channels or platforms
  • Tweaking your branding and tone of voice depending on where you’re selling
  • Basic translation (this can be a massive timesaver)

#3: REPLACE 

Next up, a vaguely similar but slightly simpler function: REPLACE. Rather than searching for a specific value to replace, this function operates based on the position inside the string instead.

What it looks like in action

REPLACE($ATT.MODEL,1,3,”ABCDE”)

  • This would generate an output value that replaces the first three characters in the attribute “model” with the string “ABCDE”.
    • E.g. XYZ12345 → ABCDE12345

Typical use cases

This one’s great for updating particular details within your attributes—think adjusting your model numbers or product identifiers for particular platforms and marketplaces, and so on. 

My, what perfectly-adapted product listings you have!

#4: ESCAPEHTML

Okay, onto another pretty simple-to-grasp function. ESCAPEHTML is pretty straightforward—it just removes all the HTML tags from whatever’s inside the brackets.

What it looks like in action

ESCAPEHTML($ATT.SHORT_DESCRIPTION)

  • This would create a new attribute based on the attribute “Short Description,” but without any HTML tags.
    • E.g. <ul><li>This, </li><li>that, </li><li>the other.<br></li></ul> → This, that, the other.

Typical use cases

Again, pretty simple—this one comes in handy when you’ve got a text-based attribute with HTML tags (like a product description, for example) that you need in a plain text/rich text format for one or more of your channels. Job done.

#5: “”

Nope, not a typo—this one is literally just quotation marks. If you create a computed attribute that’s just something inside quotation marks, a.k.a. a static value, that’ll make the PIM system generate an output value for your channels that only contains whatever’s inside those quotation marks.

What it looks like in action

“global”

  • This would create a new attribute that simply says global.

Typical use case

Why is this useful, I hear you ask? Simple—to avoid cluttering up your product database with random attributes that are only necessary for individual channels or platforms. This could be because all the products you sell are from the same brand, or for more niche things, like Shopify’s requirements.

Each product you sell on Shopify needs to have a few attributes that aren’t required anywhere else (looking at you, “published scope”). Instead of creating a new attribute in your central database just for Shopify and filling your screen with clutter that you don’t need to see, it’s a lot neater to just get your PIM to create that attribute and add it to your data whenever it exports everything else to Shopify.

Repeat this process for any other channel-specific attributes and suddenly you'll find your product information looking a lot neater—letting you focus on just the data that matters.

Anything that can help you manage multiple channels is worth a shot, right? 👀

#6: CONCAT

CONCAT comes from the word “concatenate”, which, as we all know, is when you try and convince a cat to concentrate (edit: this may not be 100% correct). Whatever the origin, this function is all about combining different elements to create a new attribute.

What it looks like in action

CONCAT($ATT.TITLE," | $",$ATT.PRICE)

  • This would create an attribute combining the attributes “title” and “price”, with appropriate punctuation in the middle.
    • E.g. [Classic Crewneck Sweater] + [19.99] → Classic Crewneck Sweater | $19.99

Typical use case

Of course, generating varied product titles and labels for different purposes is one of the most common examples, but that’s just the beginning—there are more uses for this function than I con cat–sorry, can count. You could use it to:

  • Add your slogan to the end of your product descriptions
  • Add currency symbols to your prices (like in the example above)
  • Create a bulleted list of features so you can list your product on Amazon

The possibilities are endless!

#7: IF

Okay, let’s finish with a clever one. The IF function lets you set conditions, and then have two possible results based on whether those conditions are met or not.

What it looks like in action

IF(LTE($ATT.PRICE,10),"$10 or less","over $10")

  • This would generate an attribute saying either “$10 or less” or “over $10”, depending on the price.
    • E.g. 9.99/10 → $10 or less; 10.01 → over $10

Typical use case

In addition to labeling your products based on their price band, there are countless more possibilities with the IF function. Combining IF with other functions means you can do all sorts of things—the only limit is how complicated you want to get! 

Ready for a more advanced example? Let's say you wanted to set up a computed attribute that would check your product descriptions to see if they included the brand name, and then add the brand name to the start if they didn’t. For this somewhat complicated task, you’d use:

IF(GT(SEARCH($ATT.BRAND,$ATT.DESCRIPTION),0),$ATT.DESCRIPTION,CONCAT($ATT.BRAND," ",$ATT.DESCRIPTION))

—hey, I did say it was going to get a bit complicated 😅 

Don’t let all that complication put you off though! Sure, it might take a little effort to set up at the start, but once you have these formulae in place they'll end up automating so much of your data management processes (and saving you hours of manual data entry in the process).

The magnifying glass is a metaphor; the megaphone is not (we really do shout about data far too often).

Final functions

So there you have it! Like I said, these are just some of the most common examples—some other handy ones are things like ROUND, which rounds any messy-looking numbers to the nearest interval of your choosing, or UPPER, LOWER, and PROPER, which convert text to uppercase, lowercase, or title case. 

For a full list of cheat codes for your product data, check out our Formula Cheat Sheet and Guide for some more timesaving tricks, or get in touch with one of the many formula fanatics over at Plytix—we’re not as nerdy as we sound, honest. On top of that, if you’d like to see some other ways that PIM software can save you time, we’ve got an ebook waiting for you just down below—enjoy!