How does TikTok know your child’s age?

Last modified on

TikTok uses an AI tool known as Age Inference. When your child first signs up for TikTok they are asked for their age, but as you’d expect, not every child is entirely truthful. So even if they give themselves an adult date of birth their usage over time decides whether they should be given the “child” label.

To do that, the system looks at what videos your child is watching, which accounts they follow and interact with, the language they use in comments and captions, and the content in their own profile to decide whether they are a child.

I do not work for TikTok and the do not share their exact methods, so in this explainer I will talk about the AI behind this type of feature – the AI classification algorithm – and how it typically works. This will give you an understanding of functionally how the feature works, even if the exact details might differ.

To train an AI algorithm you need data. The AI that age inference is based on is what is known as a classification algorithm, which means the data needed is a whole bunch of accounts that are already correctly labelled as child or adult.

The accounts TikTok can be confident are children will mostly be those who gave their real age at sign up. Now I don’t want to make any judgment on children, but I feel it’s fair to say that the kinds of children that are happy to disclose their age at sign up may be watching different categories of content to those who have not.

When designing an algorithm data scientists will test it using something called test data. In this case that is a bunch of accounts that are known to be correctly labelled as child or adult, but crucially weren’t used to train the algorithm. This is then fed back into the algorithm to see how it would label them and then the data scientists mark the algorithm’s work.

They will either be correct – a child account with a child label, an adult account with an adult label, or they will be incorrect – a child account not labelled as such, or an adult account incorrectly flagged as a child.

The number of incorrect labels across all the test data is what they then look at – so that’s the adult accounts labelled as children, and the child accounts labelled as adult. This is then returned as a percentage.

Let’s say there are 1,000 accounts in the test data and 900 are correct, 100 are incorrect then the algorithm is showing 10% error. There’s no fixed rule for what error rate is acceptable — each team decides based on what mistakes cost. Let’s say this team is aiming for under 5%. So at 10% they would likely go back, tweak the algorithm a bit (more about that below) and see if they can get that 10% down to less than 5%. Which would mean that 50 accounts are incorrectly labelled.

Based on the ICO’s figures for 2020, roughly 6–8% of UK TikTok accounts belonged to children under 13 – so let’s estimate, and this is my guess, that around 15% of accounts today are under-18s. So we’ll say 150 of our 1,000 test accounts are children.

In the worst case, if all of our 5% incorrectly labelled accounts fall into the child category, then that means 1/3 of child accounts are not being identified. So “5% error” is misleading when one type of incorrect (child accounts being labelled as adults) is far worse than the other (adult accounts being labelled as child).

Now I want to be clear that I do not know what error rate TikTok designs to, nor do I know if they have made any exceptions to the standard practice of training an AI categorisation algorithm, so all I can do is explain how it typically works.

Earlier on I mentioned that data scientist will “tweak the algorithm”, this is one of the ways they might do this.

AI algorithms are probabilistic, which means the algorithm will output “63% confidence that it’s a child”. Then it’s up to the people who have designed this feature in TikTok to decide which percentage constitutes a child account.

They do this by setting the confidence threshold, let’s say they decide that the threshold is 60% and everything over 60% should be labelled as a child. Then they pass back in all the test data to see what the error rate is.

The data below is entirely fabricated, but is designed to help with the explanation. Here we see that when the threshold is set to 60% the error rate is 6%, which means 60 accounts are incorrectly labelled.

ConfidenceIncorrectly labelled
50%9%
60%6%
70%5%
80%6%
90%7%

As you can see here 70% would give us the required error rate, and typically data scientists wouldn’t be working in rounded numbers so the actual figure would be 69.76% or whatever – but you get the gist.

You may wonder why the error rate is high at 50% and then again at 90%. This is because if the confidence threshold is set to a high number (90%) the number of accounts labelled as child accounts is low, so far fewer adult accounts are being labelled incorrectly but many children are being missed.

With the low threshold (50%) more accounts are labelled as child accounts, but that also includes more adult accounts being labelled as child.

So lower thresholds protect more children, but are a pain for adult users as they have to contact the companies to have this corrected. And obviously this is also a cost to the company to hire people to perform these corrections.

I have just a couple more things to mention on this topic.

Behaviour of children aged 13 is likely quite different to that of an 18 year old, but as the age of the child increases it becomes more difficult to distinguish those behaviours. when your child is 17 years and 300 days old they are a child, but just a couple more months and they are entitled to an adult account. But obviously they don’t suddenly change their behaviour the minute that clock strikes 00:00 into their 18th birthday.

And the final note is that all of this requires capturing and processing children’s data. I’ve talked a lot about this else where so I’ve purposely left it out of this post, but it’s too important not to give mention to.

If you have any questions on this topic, or anything else, please do send them over to me at fiona@raisinggenerationai.com.

Discover more from Raising Generation AI

Subscribe now to keep reading and get access to the full archive.

Continue reading