I currently use a UTM tagging template that was created by the team at linktosheets. But I would like to be able to transfer it over to AirTable.
It should be a relatively simple project for someone who knows how to replicate the formula in
Column 6 of this Google Sheet.
I haven’t mastered AirTable formulas yet, so I’m looking for help with this. Please let me know if you’re willing / able to help with re-creating this sheet for me.
I would like to help, kindly contact me on S.k.y.p.e- cis(dot)ron or e.m.a.i.l me- ron(dot)cis40(at)gmail(dot)com
This is pretty easy with just two functions
& and SUBSTITUTE. The first function we can use to join the text of multiple fields and the latter we can use to replace the spaces with ‘%20’.
You can read more about both functions here:
For an overview of formula fields, please refer to the Guide to Formula, Lookup, Count, and Rollup fields.
Formulas may involve functions, numeric operations, logical operations, and text operation...
For your table, I came up the following formula:
SUBSTITUTE(URL & '?utm_medium=' & Medium & '&utm_source=' & Source & '&utm_campaign=' & Campaign, ' ', '%20')
With the table structure looking like this:
I didn’t add UTM tags for ‘Content’ or ‘Keyword’ but that should be easy enough. If you’d like to add removing a UTM tag if the field is blank I’d be happy to add some
IF logic to the function above. Also feel free to copy out my table if you want to take a closer look:
This is amazing! I wouldn’t have been able to figure that out myself. Thank you
@bdelanghe. I’m about to jump on a client call, but I’ll pop back in afterwards and take a thorough look.
See? I told you someone would almost certainly volunteer a solution before the end of the day!
@bdelanghe. This is awesome. I would love those last few things you mentioned, if you’re able to please:
UTM tags for ‘Content’
UTM tags for ‘Keyword’
removing a UTM tag if the field is blank.
Those things would make this perfect.
Oh! And is there a way to make sure the generated URL is all lowercase?
Bonus, also done!
Before I give you the formula, let me explain what’s added:
IF functions are wrapped around each UTM tag. You’ll notice there is no =, this because any text (except ‘false’ or ‘0’) will return TRUE. So each if says, “if there is text in this field, then show the UTM tag.”
REPLACE, is used to add the ‘?’ to the beginning of the UTM tags replacing the first ‘&’. All tags now start with this because we don’t know which will be the first tag.
LOWER, this one is easy just wrap it around anything and it’ll change the case to lower.
And now for the formula:
IF(Medium,'&utm_medium=' & Medium) &
IF(Source,'&utm_source=' & Source) &
IF(Campaign,'&utm_campaign=' & Campaign) &
IF(Content,'&utm_content=' & Content) &
IF(Keyword,'&utm_keyword=' & Keyword)
, ' ', '%20')
Best of luck!
If you need to add new UTM tags. I suggest copying the formula into notepad and adding mimicking the IF formula replacing it with your new tags name.
This is great! I have one issue though, as I would like the formula not to print anything if I dont have a URL in the field, how can I add it to the code?
You can simply wrap the whole formula in an
IF() function, like so:
<< The rest of your formula >>
@Jeremy_Oglesby you lifesaver, tried to fit it in my code, but get an error, can you check
LOWER( SUBSTITUTE( Link & REPLACE( IF(Platform,’&utm_medium=social’ ) & IF(Platform,’&utm_source=’ & Platform) ,1,1,’?’) , ’ ', '%20’))
I’m not entirely sure, but I think maybe some bad quotes got you… Airtable is picky about those. Try copy-pasting the formula below, where I’ve fixed all the bad quotes, and see if that works for you:
IF(Platform,'&utm_medium=social' ) &
IF(Platform,'&utm_source=' & Platform),