Autocat exclusions / Booleans: Ikea [City] vs. Ikea [City] Rest

Ideally without using Regex, but I will if I have to, how would you set up an Autocat rule that assigns all transactions with the description “Ikea [City]” (which is Ikea the furniture store) to the category “Furniture” but sends “Ikea [City] Rest” (Which is the associated restaurant) to the category “Restaurants”?

We live close to two Ikeas (one closer but with sales tax and one further with no sales tax) so I do need to match any [City], ideally using something like Contains: “Ikea” AND “Rest” vs Contains: “Ikea” AND NOT “Rest”.

I’ve experimented with a rule for Contains: “Ikea”,“Rest” and a second for Contains: “Ikea”, and in the opposite order, but the end result of both is that whichever order comes last gets used.

More broadly, is it possible to use booleans (AND, OR, NOT, etc.) to control how Autocat matches?

Edit: Additional use case, distinguishing between “Costco” and “Costco Gas”.

The trick here is to use the order of the AutoCat rules to your advantage. AutoCat will apply the first rule it finds, so put the more specific one first, then the less specific one second, and then don’t sort your AutoCat sheet. Also make sure your AutoCat is set to the default setting of only running for blank transactions.

IKEA City Rest → will catch all the restaurant ones first
IKEA City → will catch anything else that’s left

I see this often with Uber as well, and you want to follow the same idea of the more restrictive rule first and end with the most general one.

Uber Eats →
Uber Cash →
Uber →

Thanks @Caroleen

Unfortunately that isn’t working for me and I’m not sure why. The two rules I have are

Category Description Contains
Dining Out “Ikea”,“Rest”
Furnishings Ikea

but after running Autocat, everything gets categorized as furnishings:

The same holds true if I apply the rules in the opposite order.

Try using the whole description in your AutoCat, so include the blacked out city name in your description string.

“Ikea XXXX Rest” → Dining Out
“Ikea” → Furnishings

You’ll have to delete all the currently assigned categories in the Transactions tab and then re-run AutoCat.

1 Like

Thanks - I may have to do it that way. I was hoping to figure out a way to make the single ruleset work for any Ikea. Since it seems like there’s no other way to do it, I did decide to revert to using regex: “Ikea.*Rest” does the trick.

Thanks for your help.

For your “Dining Out” rule, you can actually set the AutoCat rule to use two criteria: Description Starts With = “Ikea” and Description Ends With = “Rest”. That will capture restaurant purchases for any city. Regex is a more graceful solution, but it certainly is an acquired taste. :slight_smile:

That’s a good point. I hadn’t considered using “ends with” although unfortunately it turns out Ikea appears to randomly (about 20% of the time, from my transaction history) put the city in the description twice, a la “Ikea Anytown Rest Anytown” which just indescribably unhelpful.

Thanks for the thought, though.

1 Like

Regex is a little bit fussy but you could experiment with your regex here and come up with something robust…