ADVERTISEMENT

EU hits TikTok with big fine over child data

Published Sep 15, 2023 01:50 pm

LONDON, United Kingdom - A European Union regulator hit Chinese-owned social media platform TikTok with a 345-million-euro fine over child data breaches on Friday, in the bloc's latest salvo against the business practices of tech titans.

The fine, equivalent to $369 million, is the culmination of a two-year inquiry by Ireland's Data Protection Commission (DPC).

The Irish watchdog, which plays a key role in policing the EU's strict General Data Protection Regulations, gave TikTok three months "to bring its processing into compliance" with its rules.

The DPC in September 2021 began examining TikTok's compliance with GDPR in relation to platform settings and personal data processing for users aged under 18 years old.

It also looked at TikTok's age verification measures for persons under 13 and found no infringement, but found the platform did not properly assess the risks to younger people registering on the service.

The regulator highlighted in its ruling Friday how children signing up had TikTok accounts set to public by default, meaning anyone could view or comment on their content.

It also criticised TikTok's "family pairing" mode, which is designed to link parents' accounts to those of their teenage offspring, but the DPC found the company did not verify parent or guardian status.

Ireland is at the centre of the GDPR regime because Dublin hosts the European headquarters of TikTok and the likes of Google, Meta and X, formerly Twitter.

In May, the DPC fined Meta a record 1.2 billion euros for transferring EU user data to the United States in breach of a previous court ruling.

TikTok, a division of Chinese tech giant ByteDance, is extremely popular among young people with 150 million users in the United States and 134 million in the EU.


 

TikTok 'respectfully disagrees'


 

In response to the fine, TikTok said it "respectfully disagrees" with the verdict and was "evaluating" how to proceed.

"The DPC's criticisms are focused on features and settings that were in place three years ago, and that we made changes to well before the investigation even began, such as setting all under 16 accounts to private by default," a TikTok spokesperson told AFP.

The platform insists that it closely monitors the age of its users and takes action when needed.

TikTok says it deleted almost 17 million accounts worldwide in the first three month of this year due to suspicions that they belonged to people under 13 years old.

Earlier this month, the social media giant opened a long-promised data centre in Ireland, as it tries to calm fears in Europe over data privacy.

GDPR came into force in 2018 and was the EU's toughest and most famous law on tech, ensuring citizens give consent to the ways in which their data is used.

Friday's fine comes after the EU last week unveiled a list of digital giants -- including Apple, Facebook owner Meta and ByteDance -- that will face tough new curbs on how they do business.

Related Tags

world news Tiktok European Union
ADVERTISEMENT
.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1561_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1562_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1563_widget.title }}

{{ articles_filter_1564_widget.title }}

.mb-article-details { position: relative; } .mb-article-details .article-body-preview, .mb-article-details .article-body-summary{ font-size: 17px; line-height: 30px; font-family: "Libre Caslon Text", serif; color: #000; } .mb-article-details .article-body-preview iframe , .mb-article-details .article-body-summary iframe{ width: 100%; margin: auto; } .read-more-background { background: linear-gradient(180deg, color(display-p3 1.000 1.000 1.000 / 0) 13.75%, color(display-p3 1.000 1.000 1.000 / 0.8) 30.79%, color(display-p3 1.000 1.000 1.000) 72.5%); position: absolute; height: 200px; width: 100%; bottom: 0; display: flex; justify-content: center; align-items: center; padding: 0; } .read-more-background a{ color: #000; } .read-more-btn { padding: 17px 45px; font-family: Inter; font-weight: 700; font-size: 18px; line-height: 16px; text-align: center; vertical-align: middle; border: 1px solid black; background-color: white; } .hidden { display: none; }
function initializeAllSwipers() { // Get all hidden inputs with cms_article_id document.querySelectorAll('[id^="cms_article_id_"]').forEach(function (input) { const cmsArticleId = input.value; const articleSelector = '#article-' + cmsArticleId + ' .body_images'; const swiperElement = document.querySelector(articleSelector); if (swiperElement && !swiperElement.classList.contains('swiper-initialized')) { new Swiper(articleSelector, { loop: true, pagination: false, navigation: { nextEl: '#article-' + cmsArticleId + ' .swiper-button-next', prevEl: '#article-' + cmsArticleId + ' .swiper-button-prev', }, }); } }); } setTimeout(initializeAllSwipers, 3000); const intersectionObserver = new IntersectionObserver( (entries) => { entries.forEach((entry) => { if (entry.isIntersecting) { const newUrl = entry.target.getAttribute("data-url"); if (newUrl) { history.pushState(null, null, newUrl); let article = entry.target; // Extract metadata const author = article.querySelector('.author-section').textContent.replace('By', '').trim(); const section = article.querySelector('.section-info ').textContent.replace(' ', ' '); const title = article.querySelector('.article-title h1').textContent; // Parse URL for Chartbeat path format const parsedUrl = new URL(newUrl, window.location.origin); const cleanUrl = parsedUrl.host + parsedUrl.pathname; // Update Chartbeat configuration if (typeof window._sf_async_config !== 'undefined') { window._sf_async_config.path = cleanUrl; window._sf_async_config.sections = section; window._sf_async_config.authors = author; } // Track virtual page view with Chartbeat if (typeof pSUPERFLY !== 'undefined' && typeof pSUPERFLY.virtualPage === 'function') { try { pSUPERFLY.virtualPage({ path: cleanUrl, title: title, sections: section, authors: author }); } catch (error) { console.error('ping error', error); } } // Optional: Update document title if (title && title !== document.title) { document.title = title; } } } }); }, { threshold: 0.1 } ); function showArticleBody(button) { const article = button.closest("article"); const summary = article.querySelector(".article-body-summary"); const body = article.querySelector(".article-body-preview"); const readMoreSection = article.querySelector(".read-more-background"); // Hide summary and read-more section summary.style.display = "none"; readMoreSection.style.display = "none"; // Show the full article body body.classList.remove("hidden"); } document.addEventListener("DOMContentLoaded", () => { let loadCount = 0; // Track how many times articles are loaded const offset = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // Offset values const currentUrl = window.location.pathname.substring(1); let isLoading = false; // Prevent multiple calls if (!currentUrl) { console.log("Current URL is invalid."); return; } const sentinel = document.getElementById("load-more-sentinel"); if (!sentinel) { console.log("Sentinel element not found."); return; } function isSentinelVisible() { const rect = sentinel.getBoundingClientRect(); return ( rect.top < window.innerHeight && rect.bottom >= 0 ); } function onScroll() { if (isLoading) return; if (isSentinelVisible()) { if (loadCount >= offset.length) { console.log("Maximum load attempts reached."); window.removeEventListener("scroll", onScroll); return; } isLoading = true; const currentOffset = offset[loadCount]; window.loadMoreItems().then(() => { let article = document.querySelector('#widget_1690 > div:nth-last-of-type(2) article'); intersectionObserver.observe(article) loadCount++; }).catch(error => { console.error("Error loading more items:", error); }).finally(() => { isLoading = false; }); } } window.addEventListener("scroll", onScroll); });

Sign up by email to receive news.