Uses the Type property to set the limits of the 3 text properties: Text / Headline / Link → Has a character counter that counts down from the limit or each as you type. → This is dumb and I apologise.

Version 1 —

The “Hmm Dunno” Version

<aside> ⏳ Format the Type options as follows: ###/###/### → Add descriptions after the last ### → Numbers must only be 3 digits, so 1 needs to be 001, and only numbers up to 999 will work.

</aside>

Social Ads → V1

Text Limit

<aside> ❓ The number before the first /

</aside>

prop("Type") ? format((toNumber(slice(prop("Type"), 0, 3)) - length(prop("Text")) <= -1) ? "❌" : format(toNumber(slice(prop("Type"), 0, 3)) - length(prop("Text")))) : ""

Headline Limit

<aside> ❓ The number between the first and second /

</aside>

prop("Type") ? format((toNumber(slice(prop("Type"), 4, 7)) - length(prop("Headline")) <= -1) ? "❌" : format(toNumber(slice(prop("Type"), 4, 7)) - length(prop("Headline")))) : ""

Link Limit

<aside> ❓ The number after the second /

</aside>

prop("Type") ? format((toNumber(slice(prop("Type"), 8, 11)) - length(prop("Link")) <= -1) ? "❌" : format(toNumber(slice(prop("Type"), 8, 11)) - length(prop("Link")))) : ""

Good to Go

<aside> ❓ Because it’s good to know.

</aside>

(empty(prop("Text")) and empty(prop("Headline")) and empty(prop("Link"))) ? "" : ((prop("Text Limit") != "❌" and prop("Headline Limit") != "❌" and prop("Link Limit") != "❌") ? "👌" : "❌")

Version 2 —

The “This is Silly” Version

<aside> ⏳ Format the Type options as follows: ##/##/## or Type Name: ##/##/## → The : is needed to separate the description from the numbers. → Any number amount will work.

</aside>

Social Ads → V2

Text Limit

<aside> ❓ The number before the first /

</aside>

prop("Type") ? ((toNumber(replace(replace(prop("Type"), "^(.*): ", ""), "/(.*)", "")) - length(prop("Text")) <= -1) ? "❌" : format(toNumber(replace(replace(prop("Type"), "^(.*): ", ""), "/(.*)", "")) - length(prop("Text")))) : ""

Headline Limit

<aside> ❓ The number between the first and second /

</aside>

prop("Type") ? ((toNumber(replace(replace(replace(prop("Type"), "^(.*): ", ""), "([a-zA-Z0-9]{0,})/", ""), "/(.*)", "")) - length(prop("Headline")) <= -1) ? "❌" : format(toNumber(replace(replace(replace(prop("Type"), "^(.*): ", ""), "([a-zA-Z0-9]{0,})/", ""), "/(.*)", "")) - length(prop("Headline")))) : ""

Link Limit

<aside> ❓ The number after the second /

</aside>

prop("Type") ? ((toNumber(replace(replace(prop("Type"), "^(.*): ", ""), "([a-zA-Z0-9]{0,})/([a-zA-Z0-9]{0,})/", "")) - length(prop("Link")) <= -1) ? "❌" : format(toNumber(replace(replace(prop("Type"), "^(.*): ", ""), "([a-zA-Z0-9]{0,})/([a-zA-Z0-9]{0,})/", "")) - length(prop("Link")))) : ""

Good to Go

<aside> ❓ Because it’s good to know.

</aside>

(empty(prop("Text")) and empty(prop("Headline")) and empty(prop("Link"))) ? "" : ((prop("Text Limit") != "❌" and prop("Headline Limit") != "❌" and prop("Link Limit") != "❌") ? "👌" : "❌")

<aside> <img src="https://s3-us-west-2.amazonaws.com/secure.notion-static.com/1649d2f9-1b45-478a-86b4-341fbe27e06f/benny.png" alt="https://s3-us-west-2.amazonaws.com/secure.notion-static.com/1649d2f9-1b45-478a-86b4-341fbe27e06f/benny.png" width="40px" /> By BenLatest • Was this helpful? Please consider buying me a coffee. Cheers!

</aside>