How to use AI to suck at user experience

How to use AI to suck at user experience
Photo by Alexandre Debiève / Unsplash

Or: the perils of blindly using AI to save some money.

IMPORTANT NOTE: while I'm pointing out some specific companies in this post, it's not meant to discredit them; instead, I hope to trigger a bit of reflection on how AI should (and should not) be used, and how it should not replace your product and user experience thinking.

I admit I was kind of waiting for it to happen; bad usage of AI was going to create some problem for me one day or another.

Full disclosure: I'm not an AI skepticist, I've got quite a bit of machine learning and data science experience, and I think the current LLM-oriented AI wave certainly has value, but I believe it's an evolution rather than the revolution that hype-riders claim it to be.

The facts

Some days ago I was having a short vacation in Lienz, Austria, a nice small city from where you can follow a bike path through the mountains to San Candido, Italy and then return by train (or vice-versa). I still recommend the trip!

We were going to take the train to San Candido at 8.50am, and we arrived at the train station parking at 8.30am, so we had quite a bit of time. But: you need to pay for the parking. No problem, right? Unless the parking meter, which looked quite modern, only accepted coins: no cards and no bills. We needed to pay a total of EUR 8,00 and hadn't got enough coins. So, what? Technology to the rescue, of course: we downloaded the official parking app, as advertised on the side of the parking meter.

parking meter Parkster ad

So, I duly scanned the QR code which led me to the Parkster IOS app . I installed it and looked for the area code in order to pay:

parkster screenshot

I tried looking manually for the parking area; no luck. I gave location access to the app, and it worked flawlessly, the map was pointing precisely to our parking spot. And, while entering the code, I could see that some parking areas indeed existed as they were partially matching:

partial area matches

So, the app seemed to be working indeed, it was just that our parking area wasn't showing up. By then, we were risking running out of time, so we scrambled to change some coins, and we barely made it to the train. If you have access to the app in your App Store, try yourself - the behaviour is still the same as of August, 26th 2023.

Trying to fix the issue

But I had took photos and screenshots, so, once I got back home, I sent an e-mail to the Lienz Town Hall, to Parkster customer service (the e-mail was right there in the ad) and to Lienz Tourist Information (to their credit, Parkster is the only addressee that answered so far), explaining the issue I found with a certain amount of details and proof:

1st support request

I got this response from Parkster:

answer 1

This is quite a generic answer, which is something that can happen with support requests; a "template answer" is sent at first to reduce operator burden, and only if the customer follows up then a "real operator" is involved. But the "you need to register" is either factually incorrect (I was using the app without registering) or misleading; so I followed up:

followup 1

and I got this:

answer 2

Now I was getting puzzled. Did they read my message? It appeared so, since the answer kind of made some sense. But, the area code was available both in screenshots from my first e-mail, and it was explicitly there in my followup question.

Then, I tried registering, and... the area codes would finally show up! During registration, I was asked "in which country you'd like to park", so I suspect that only related area codes are shown. Why? I don't know, but I don't actually care, there may be some reason. So, I had one more followup with the customer support just to explain that this "detail" isn't written anywhere and this was quite a UX problem. But at this point I had some suspicion about my support agent; it seemed like he wanted to answer something to me, but he did not really care how I was communicating something which should have value to his own employer (I sincerely doubt I was the only one who had experienced such issue, Austria is quite packed with tourists):

final interaction

that made me think "I am really chatting with a human or are they using ChatGPT to answer?!?" - I just told you I have registered and now I can find the zone! And the other "live tickets" and invoice parts are totally unrelated!

On such last message, I spotted a different sender than beforehand (I don't know why):

and, ThinkOwl indeed is Customer Service Software powered by AI, whatever that means.

Wrapping up

For the parking app

Some customer was trying to help you and point out a bug or a UX problem to you.

An answer like "Thank you for your message. Our development team has been informed and we'll consider possible changes to our system in the future" would have both great and enough. And, the change could be something as stupid as adding "Please make sure to register for the correct country or zones won't be found" to the "not found message".

AI is not really helping in this situation. It probably lets some departments to meet some cost and answer time targets, but they'll miss the opportunity to learn customer problems and improve their product and user experience.

Don't use AI this way. In fact, I expect AI to improve customer experience by empowering customer support representatives to work better and faster, answering quickly to FAQs but letting them take more time to answer more complex - but legit - answers or to interact with development teams to actually fix real, underlying issues.

For the Lienz municipality

Product thinking goes end-to-end. Installing a coin-only parking meter in 2023 (or 2020, I can't know the exact date, but it looked quite recent) because you're relying on a third-party app can be a good idea, but, then, you need to test your user flow end-to-end. Your city relies a lot on tourists, and you don't want to piss them off!