Our own visit statistics are always on. Google Analytics, which helps us understand how people use our public pages (not your signed-in workspace), is enabled only with your permission. See our Privacy policy.

Social Media Research Samples: Run the Same Search Twice and Half of It Changes

Before you use social media search results as a research sample, test whether the sample is stable. On October 24, 2026 we ran the same queries again after two minutes. On X, YouTube and TikTok only about half of the results matched. This post also covers deletions, duplicates, time windows and the status of DSA Article 40.

Illustration: two columns of the same social post cards, like one search run twice. In the second column about half of the cards changed or faded, and small arrows mark them. A clipboard with a checklist stands in front.

A keyword search on a social platform does not give you a fixed sample. On October 24, 2026 (Singapore time, UTC+8, in this post), we sent the same four queries again after about two minutes. We took 25 results each time. On X, YouTube and TikTok, the Jaccard overlap between the two runs was only 0.47–0.56. All the "new" items in the second run were published before the first run.

A third run two hours later gave an overlap with the first run of 0.52 on X and 0.22 on TikTok, but 0.92 on YouTube. So record the query time, the full parameters and the raw response. Collect each query more than once and report the overlap. If you do not, other researchers cannot reproduce your sample, and you cannot reproduce it tomorrow.

This post is for research teams that use social media or search data. Examples are communication studies, public health, political science, computational social science and fact-checking units. We describe data methods and numbers that you can check. We do not give legal advice. For platform terms and the EU Digital Services Act (DSA), read the original texts and ask your ethics board and legal office about your project.

Why check your sample now

In the last two months, several routes to platform data changed:

  • Reddit set dates to close its public Data API. Reddit posted the dates in r/redditdev on September 30, 2026. From October 31, it accepts no new public API requests. From January 12, 2027 it starts to remove access for apps that did not register. In March 2027, public access closes for all remaining apps. TechCrunch reported the same day that tools used by researchers are affected.
  • Reddit Rule 8 forbids the use of deleted content. We read the Reddit Help page "Don't break the site" on October 24. It says that apps must not "continue to use or display public content deleted by users or removed for Reddit Rules violations". It also lists scraping "without an authorized agreement" as a possible violation.
  • DSA Article 40 applications are open, but no success is public yet. Oliver Marsh works for the German NGO AlgorithmWatch. He wrote in the DSA Observatory on October 2 that by July 2026 there were 77 applications under Article 40(4). None had a known success. The Irish regulator Coimisiún na Meán published its 2025 annual report on October 7. Page 81 says that the provision came into force on October 29, 2025, and that the first applications came in.
  • Reddit is now a Very Large Online Platform. On August 31, the European Commission designated Reddit and Roblox as Very Large Online Platforms (VLOPs). ChatGPT became a Very Large Online Search Engine (VLOSE). They have four months, until January 2027, to comply with the extra VLOP obligations, and Article 40 data access is one of them. So the end of Reddit's public API and the start of its DSA research duties fall in the same quarter.

When data routes get narrower, researchers must show how complete their own samples are. The test below is a low-cost way to do that.

The test: one query, three runs

We wrote the criteria first. We set this rule before the third run. If two runs of the same query have a Jaccard overlap of 0.9 or more, one run is enough for that endpoint. If the overlap is below 0.9, collect several runs and report the union and the overlap. If a new item was published before the first run, we count it as a ranking or sampling difference, not as a new post.

Setup. Four platforms, four endpoints, the same parameters in all runs, 25 results per call:

Run A was at 12:13–12:15, run B at 12:16–12:17, and run C at 14:15–14:18. We compared item IDs, not titles.

Isometric illustration of a sampling bench. A long rack at the back holds 49 cards: the 49 different videos that one TikTok query showed across three searches. A sampling carriage on rails takes 25 cards each time and puts them in one of three trays in front. The trays are runs A, B and C, and the small clock in front of each points to 12:15, 12:17 and 14:16. Inside each tray, a 5 by 5 grid of blocks is ordered by rank. The 7 teal blocks are the videos found in all three runs; they do not sit in exactly the same places in each tray because their ranks changed. All other blocks change from run to run. The carriage is stopped over tray C.

Results.

  • X: runs A and B shared 18 of 25 items. The Jaccard overlap was 0.56, and 7 of the top 10 matched. The 7 new items in run B were published between April 2022 and August 2026. None was posted between the two runs. Run C had a Jaccard of 0.52 with run A and 0.43 with run B. Across the three runs, 39 different items appeared, and only 14 were in all three. The newest of the 7 new items in run C was published on October 20.
  • YouTube: 16 shared items, Jaccard 0.47, and only 4 of the top 10 matched. The 9 new items in run B were published in 2022–2025. Run C had a Jaccard of 0.92 with run A (only 1 item differed) but 0.43 with run B. Run B looks like a different result set that went away again two hours later. Across the three runs, 35 different items appeared, and 15 were in all three.
  • TikTok: 16 shared items, Jaccard 0.47. But 9 of the top 10 matched, so most changes were below rank 12. The newest of the 9 new items was published at 00:11 UTC on October 24, before run A. After two hours the difference was larger. Run C had a Jaccard of 0.22 with run A and 0.19 with run B. Across the three runs, 49 different items appeared, and only 7 were in all three. The newest of the 15 new items in run C was published at 23:50 UTC on October 23, also before run A.
  • Reddit (newest first): runs A and B returned the same 25 items in the same order. In run C, two hours later, all 25 items were new posts from 05:15–06:12 UTC. A newest-first window moves forward with time. That is what "newest" means, so we do not count it as instability.
Horizontal bar chart: result overlap (Jaccard) for the same query run three times, against the 0.9 threshold we set first. X: A–B 0.56, A–C 0.52, B–C 0.43. YouTube: 0.47, 0.92, 0.43. TikTok: 0.47, 0.22, 0.19. Reddit, newest first: A–B 1.00; two hours later its window had moved to new posts, so A–C and B–C are 0. Only YouTube A–C passes, and run B between them is at 0.47, so no keyword search on the three platforms gives a reproducible sample in one run.

By our own rule, the keyword searches on X, YouTube and TikTok do not give a reproducible sample in one run. The only pair above 0.9 was YouTube runs A and C, but run B between them had 0.47. So one high overlap from one pair of runs proves nothing.

This is not a tool fault. The EveryInfra capability catalog says that X returns "Top" results by default and that latest does not guarantee strict time order. Google's own YouTube Data API documentation says that totalResults "is an approximation and may not represent an exact value". A relevance-ranked search is not a fixed list.

Sankey diagram: the TikTok query climate change, from 25 items in run A at 12:15 to 25 items in run C at 14:16. 9 items from run A stayed and 16 were gone. Of the other 16 items in run C, 15 were new videos that were in neither run A nor run B, and all of them were published before run A; the last 1 was not in run A but had appeared in run B. The Jaccard overlap of the two runs is 0.22.

Limits of this result: we tested 4 queries, 25 items each, three runs on one day. Do not apply it to full archives or to longer periods. The stable Reddit result applies to newest-first order over two minutes. It does not show that relevance order on Reddit is stable.

Keyword matching is wider than you think

The same test showed a second problem. On Reddit, a multi-word keyword without quotes matches single words, not the phrase.

  • In run A, Digital Services Act without quotes (newest first) returned 25 posts. None had the full phrase in the title or body. 22 had at least one of the words (digital, service, act). The posts were casino ads, relationship advice and game trades.
  • At 12:21 we sent "Digital Services Act" with quotes, also newest first. The search returned 3 posts, and all 3 had the full phrase. They were an Instagram account appeal, a warning about scam dating sites and a German post about a rental scam. The catalog says that this endpoint searches the last month, so these 3 posts are all that newest-first search gives for that month. At 14:17 we got the same 3 posts again.
Stacked bar chart: Reddit search for Digital Services Act, newest first. Without quotes it returned 25 posts: 0 with the full phrase, 22 with only digital, service or act, and 3 with none of the three words. With quotes it returned only 3 posts, and all 3 had the full phrase; at 14:17 it gave the same 3 posts.

The relevance check can also go wrong. For the TikTok set, we first counted posts whose text had "climate change". Only 4 of 25 matched. Then we removed # and spaces from the hashtags and matched again. Now 23 of 25 matched. The 19 videos we missed only had #climatechange.

What this means for a study: check a keyword sample by hand and report the share of irrelevant items. The ISAAC corpus (arXiv:2609.27059), released on September 22, selected more than 527 million Reddit posts. Its authors used a multi-step, human-audited filter to keep irrelevant content below 10%, and they report this share for each group. Without such a step, a "Reddit discussion of the DSA" sample can be mostly casino ads.

The same item, two endpoints, two counts

Studies often use likes, views or comments as outcomes or weights. Between 12:16 and 12:21 on October 24, we compared the counts in search results with the counts from single-item endpoints:

  • YouTube: for a video published in June 2026, search gave 4,650 likes. At 12:19 the YouTube Video Details API gave 4,600. Views (48,406) and comments (590) were the same, and they did not change at 14:18. The like difference comes from display precision, not from a real change.
  • TikTok: for a climate video that The Guardian posted on October 23, search at 12:17 showed 671,900 views, 90,300 likes and 3,068 comments. At 12:19 the TikTok Video Details API showed 673,500, 90,500 and 3,074. Views grew by 1,600 in two and a half minutes. For this video, views and likes were round hundreds, but comments were exact. At 14:17 we checked again: 767,600 views, 101,600 likes and 3,402 comments. Views grew by about 14% in two hours.
  • X: we checked the European Commission's August 31 post about the designations. Search and the X (Twitter) Post Details API both gave 6,523,789 views and 4,668 likes. At 14:17 the views were 6,523,800 and the likes were still 4,668. The last two digits became 0. This can be rounding, or 11 more views. One item cannot tell you which, so record the precision of each count too.
Line chart: views of a TikTok climate video that The Guardian posted on Oct 23; the axis starts at 0. At 12:17 the search list showed 671,900. At 12:19 the video details showed 673,500, 1,600 more in 2.5 minutes. At 14:17 the video details showed 767,600, 94,100 more in about two hours, up 14%. Likes in the same reads were 90,300, 90,500 and 101,600.

So store two facts with every count: the read time, to the second, and the endpoint that gave the count. New posts grow fast in their first days. Do not compare a morning count with an afternoon count from the same day as if they were equal.

Duplicates and reposts: one account, four posts in nine minutes

Among the 25 unrelated Reddit posts, 4 came from one account. The account posted them to 4 different communities within 9 minutes (03:39–03:48 UTC). The texts were almost the same: the Jaccard similarity of 5-word shingles was 0.93–0.99. Another account posted 3 casino ads to 3 unrelated communities.

If your question is "how many people discuss this topic", count these 4 posts as one voice. If your question is "how does content spread across communities", these posts are the signal that you want to keep. We suggest this method:

  1. Normalize the text: remove links and punctuation, and use lower case.
  2. Mark near-duplicate pairs with a 5-word shingle Jaccard of 0.6 or more.
  3. Use the author and a time window (for example, the same author within 1 hour) to separate reposts, cross-posts and spam.
  4. Report the sample size before and after you remove duplicates.

The same logic applies to store records on Google Maps: a platform ID tells you that a record exists. It does not tell you that the record is an independent voice or entity.

Deletions and visibility: samples get smaller

Content also disappears. Authors delete posts, platforms remove them, and accounts close or go private.

  • The PoliTok-DE dataset (arXiv:2509.15860) by Ruiz and colleagues has more than 930,000 TikTok posts from two German elections. More than 330,000 were later deleted: 18.7% of the Saxony sample and 39.7% of the federal sample. In the federal sample, about two thirds of the deletions were by the creators.
  • Zubiaga (2018, JASIST) collected 30 Twitter datasets with more than 147 million tweets again. The older a dataset was, the smaller the share that was still available. The metadata, such as follower counts, also became less representative over time.

At the same time, platform terms tell researchers to delete:

  • The TikTok Research Tools Terms apply from January 22, 2026. You must refresh research data at least every 30 days. At each refresh, you must delete data that is no longer available. Vetted DSA researchers can explain in their request why such rules would block their research.
  • The X Developer Policy says that stored X content must match its current state on X. When content changes on X, change your copy too. Do it as soon as reasonably possible, or within 24 hours after a request. Academic researchers can share Post IDs for non-commercial research that X approved in writing, or for peer review.
  • Reddit Rule 8, quoted above, forbids apps to keep using deleted public content.

This creates a conflict: reproducibility needs the original sample, but terms and privacy need deletion.

A 2026 review in Political Communication lists "limits to data sharing for replication" as an early challenge of Article 40. A workable approach: publish the ID list, the query parameters, the collection times and the aggregate statistics. Keep the full text only in a controlled environment and delete it as the terms require. Each time you collect again, report the share that you can still retrieve. Treat the deletion rate as a result in your paper. Do not replace the sample quietly.

Sampling bias: research interfaces also show only part

Many people think that a platform's own research interface gives the full data. Recent audits do not support this:

  • In arXiv:2601.12390, Bekavac and Mayer rebuilt the full feeds of two controlled test accounts during elections. They compared these feeds with the data that the TikTok Research API and Meta Content Library return for the same posts. The research interfaces excluded up to about 50% of the content that users saw. They removed up to about 83% of context metadata. One limit was only about 1,000 requests per week.
  • The Meta Content Library page sets a limit for personal accounts. It includes their posts only if the account is verified or has 100 or more followers. Small personal accounts are missing by design.
  • WhichTok (arXiv:2608.09917), released on August 10, compared three TikTok collection tools: the TikTok Research API and two web-based tools. Hashtag and keyword searches gave the largest differences. Only the user endpoint gave consistent results across all three.
  • In 2025, arXiv:2506.09746 tested videos from data donations. The TikTok Research API returned no metadata for about one in eight of them, including TikTok's own videos and ads.
  • The problem is old. Morstatter and colleagues (2013) compared Twitter's sampled Streaming API with the full Firehose. In Pfeffer and colleagues (2023), 80 scholars collected all 375 million tweets from 24 hours that started on September 21, 2022. The dataset is a baseline for later research.

So for every data route, write down what that route leaves out. If possible, check part of the sample with a second, independent route. Our search-versus-details check above is a low-cost example.

Time windows: "recent" means different things

The time range of a keyword search is often not your choice:

  • The catalog says that Reddit keyword search covers the last month, and the sort order does not change this range.
  • Our run A on X used latest, but the 25 posts were published between August 2024 and October 2026 (5 in 2024, 11 in 2025, 9 in 2026).
  • The 25 YouTube results in relevance order were published between 2020 and 2026.

For a time series, do not use a relevance search to stand for "all discussion in a period". Collect by community, account or channel and filter by posted_at. Or use the platform's own date syntax in the X keyword (the catalog note for twitter/search lists syntax such as since:). In your methods section, state the real start and end dates that your data covers.

DSA Article 40: where it stands after one year

Article 40 of the Digital Services Act gives researchers two routes:

  • Article 40(12), public data. VLOPs and VLOSEs must give access "without undue delay" to data that is publicly accessible in their interface, "including, where technically possible, to real-time data". The text includes researchers "affiliated to not for profit bodies, organisations and associations". On December 5, 2025 the Commission issued its first DSA fine, €120 million, against X. One of the breaches was "the failure to provide access to public data for researchers". Tech Policy Press summarizes the decision. X prohibited independent researcher access, including through scraping. Its quotas and durations were too limited.
  • Article 40(4), non-public data. Vetted researchers apply through the Digital Services Coordinator (DSC) of their country. The rules are in Delegated Regulation (EU) 2025/2050, which applies from October 29, 2025. Applications go through the DSA data access portal. DSCs have up to 80 working days to issue a reasoned request. Platforms must publish and update data catalogues. The Commission's delegated act page has the full text. The Irish DSC published version 2 of its guidance in May 2026.

The current status, from recent first-hand sources:

  • AlgorithmWatch's request was rejected by the Irish DSC 80 working days after submission. The reasons: not enough detail on data storage and cybersecurity, and no explanation of why the amount of data was proportionate. After they resubmitted, they had to wait another 80 working days. Under Article 40(12), about 20 organizations asked six platforms for the 1,000 most-viewed posts in each Member State every six hours. Talks started in October 2025, and no platform agreed so far (DSA Observatory, October 2).
  • The ICWSM 2026 paper The Great Data Standoff names the core problem. Researchers must name the data they need. But they cannot know which data platforms hold. Taylor Annabell of Cardiff University analyzes the published data catalogues in Media, Technology and Governance (2026). She argues that platforms narrow "data" to predefined, aggregated datasets.
  • Smart Data Research UK funded the Social Platforms Data Access Taskforce. Its final report came out on September 9 and went into the repository on October 6. It collects one year of evidence on the barriers that researchers face.
  • Platform transparency data has limits too. arXiv:2610.26226 (October 19) reports that more than 99.8% of the decisions in the DSA Transparency Database cite the platform's own terms, not a legal provision.

What this means for study design: Article 40 is a route worth taking, but it takes years, not weeks. While you wait, studies based on public data must describe completeness even more clearly. Reviewers will ask how far your sample is from the real platform feed.

Research ethics and platform terms

These are method points, not legal advice:

  • Get ethics review first. The AoIR Internet Research Ethical Guidelines 3.0 are the common reference in this field. Public data is not automatically free to use. Assess the risk to authors in context, especially for health, sexuality and political views.
  • Collect only what you need. Keep only the fields that your question needs. Replace usernames of personal accounts with one-way hashes before analysis. Do not quote sentences that a reader can search to find the original post. This post does not name any personal account.
  • Delete when the terms require it. Set up regular re-collection and deletion, and record how much you deleted.
  • Read the scope of each set of terms. Research terms limit region, purpose and who can apply. Both DSA Article 40 routes are limited to research on systemic risks in the EU. Write the route and the terms that you used in your methods section.
  • Publish what others can check. You can usually publish ID lists, query parameters, collection times, aggregate results and code. Handle the full text as the terms require.

A checklist for a sample that others can check

Collection loop animation; the numbers match the 8-step checklist in the text. Steps 1 and 2 happen once, before you collect: write the criteria (two runs need a Jaccard overlap of at least 0.9 before one run counts as reproducible), and fix the keyword, sort order and item count. Then every round goes through steps 3 to 8 in order: store the raw JSON of each call with its request ID and a read time to the second; run the same query at least twice and keep the union; label 50 to 100 random items by hand for relevance; mark near duplicates with 5-word shingle Jaccard of at least 0.6 and remove them; check some counts again with a single-item endpoint and note which endpoint gave them; re-collect on the schedule the terms set, record the share still available and delete what is gone. Then the next round starts.
  1. Write the criteria. Before you collect, set the overlap threshold and the maximum share of irrelevant items. Decide how to report deletions.
  2. Fix the parameters. Put the keyword, sort order, item count, language and region in a config file. Keep it under version control.
  3. Store raw responses. Keep the full JSON of each call with the request ID. Add the read time to the second, with the time zone.
  4. Collect more than once. Run each query at least twice. Report the union, the intersection and the Jaccard overlap. For unstable endpoints, use the union as the sample.
  5. Check relevance by hand. Label a random 50–100 items and report the share of irrelevant items. Normalize hashtags before text matching.
  6. Remove duplicates. Use normalized text, shingle similarity, the author and a time window. Report the sample size before and after.
  7. Cross-check counts. Check some items again with a single-item endpoint. Write which endpoint and which time each count came from.
  8. Re-collect and delete. Re-collect on the schedule that the terms set. Record the share that is still available, and delete content that is no longer visible.

Reproduce this test with EveryInfra

This is the run A request for X. Replace <API Key> with your own key (see the quickstart):

bash
curl -s https://api.everyinfra.com/api/v1/social \
  -H "Authorization: Bearer <API Key>" \
  -H "Content-Type: application/json" \
  -d '{"platform":"twitter","action":"search","params":{"keyword":"\"Digital Services Act\"","sort":"latest","limit":25}}'

The response has id (the request ID), count, results and billing at the top level. These result fields are useful for a reproducibility test (the capability catalog is the reference for field names):

  • id: the item ID on the platform. Use it for overlap and deduplication.
  • url: the link to the original post, for re-collection and manual checks.
  • posted_at: the publication time (UTC). Use it to decide whether a new item is a new post.
  • text, title: body and title (Reddit and YouTube have titles), for relevance checks and near-duplicate detection.
  • hashtags: include these in relevance checks for TikTok and X.
  • like_count, view_count, comment_count: counts. Always store them with the read time.
  • author_username: the author, for the author window in deduplication. Hash it before analysis.
  • community: the Reddit community name, to find cross-posts.
  • search_rank: the rank in YouTube search, for top-10 overlap.

In AI clients such as Claude or Cursor, you can connect the same data through MCP. Then the assistant can run the checklist above. For other clients, see the remote MCP server page:

bash
export EVERYINFRA_API_KEY="<API Key>"
claude mcp add --transport http everyinfra https://api.everyinfra.com/mcp \
  --scope user \
  --header 'Authorization: Bearer ${EVERYINFRA_API_KEY}'

Then call everyinfra_call_api with the same parameters as the curl request. Use everyinfra_requests to see the charge for each request ID.

Errors and charges:

  • unauthorized: no key or an invalid key. No charge.
  • unknown_param or an invalid value: a wrong parameter name or enum value. The response lists the valid parameters and an example. No charge.
  • Empty result: for example, a quoted keyword with no matching posts this month. You get an empty list, and the pre-charge is refunded.
  • Capability temporarily unavailable: the response says so. No charge.

To check refunds one by one, see API billing reconciliation. To see why the live catalog is the reference for capabilities and parameters, see the live capability catalog.

Cost: one month of stability monitoring

From the capability catalog as read on October 24, reddit/search, twitter/search, youtube/search and tiktok/search cost $0.000556 per call. The single-item endpoints youtube/video, tiktok/video and twitter/post also cost $0.000556 per call (the pricing page is the reference):

  • 4 platforms, 5 keywords per platform, one call every 6 hours, 25 items per call, for 30 days: 4 × 5 × 4 × 30 = 2,400 calls × $0.000556 = $1.33.
  • Each week, recheck the counts of 100 items with single-item endpoints, for 4 weeks: 400 calls × $0.000556 = $0.22.
  • Total: about $1.56. Empty results and failed calls are not charged, so the real cost can only be lower.

All live calls for this post (three search runs, the single-item checks, the quoted Reddit search, and four web searches that we did not use in the text) cost $0.015008 (26 calls) in total.

Recent changes (September–October 2026)

  • September 30: Reddit publishes the closing schedule for its public Data API (r/redditdev). For researchers: scripts that use the Reddit public API must move to Reddit's researcher program, a commercial agreement or the DSA route before March 2027. Document your existing samples now.
  • October 1: Reddit updates its DSA page (Reddit Help). In the first half of 2026, Reddit had no more than 57.2 million average monthly active recipients in the EU. For researchers: Reddit's VLOP obligations start in January 2027, so you can prepare an Article 40(12) request now.
  • **October 1: Pote, Flammini and Menczer publish arXiv:2610.02591.** They studied app metadata from 43 influence operations that X took down. APIs are part of the infrastructure of coordinated manipulation. They also found that the removal of app-level metadata by X took away an important detection tool. For researchers: when a platform removes one field, a whole line of research can become impossible to reproduce. Keep raw responses.
  • **September 29: arXiv:2609.38571 audits AI labels on four platforms.** It collected 10,722 posts with systemic-risk and AI-related keywords. Only 33% of expert-identified deepfakes carried a platform label. For researchers: this is another share that comes from a keyword sample, so the keyword list sets the denominator.
  • October 2–6: new studies use large platform samples. arXiv:2610.09082 tracks AI harms in 5.7 million Reddit post summaries over 18 months. Two Irish flood studies (arXiv:2610.03334, arXiv:2610.06330) use keyword queries in Meta Content Library. For researchers: the more detail your sample description has, the better your results hold up.
  • **October 21: a Tech Policy Press perspective.** Jen Rosiere Reynolds says that AI risk research now has the same data access problem as social media research.

FAQ

Can I still use the Reddit API for academic research? (Google suggestion: "reddit api for academic research") Reddit's September 30 post gives two dates. New public API requests close on October 31, 2026. Public access ends in March 2027. In the comments, a developer suggests that people without API access check whether Devvit or the researcher program fits their use. Reddit is now a VLOP, so it must give researcher data access under DSA Article 40 from January 2027. If you have an active project, fix your sample description and collection logs now.

Posts in my research dataset were deleted. What should I do? (Google suggestion: "deleted tweets research dataset") Platform terms usually require you to delete them too. TikTok requires a refresh at least every 30 days, with deletion of unavailable data. X requires you to delete or update your copy soon after a change. For reproducibility, publish IDs, parameters and aggregate statistics, and report the share that you can still retrieve when you collect again. Report the deletion rate as a result.

Who can apply under DSA Article 40? (Google suggestion: "dsa article 40 researchers") Article 40(4) is for researchers at a research organization who are independent from commercial interests. They must meet data security and confidentiality requirements. They apply through a Digital Services Coordinator.

Article 40(12), for public data, explicitly includes researchers affiliated with not-for-profit bodies, organizations and associations. Both routes are only for research on systemic risks in the EU. AlgorithmWatch reports that a simple quantitative request from an NGO can pass the first check. But you must explain why the amount of data is proportionate. Ask your institution about your own eligibility.

Related reading

References

  1. Moving Data API Apps to the Developer Platform: migration dates and next steps. Reddit (r/redditdev), 2026-09-30 (primary). https://www.reddit.com/r/redditdev/comments/1wubcvf/moving_data_api_apps_to_the_developer_platform/
  2. Reddit is killing RSS feeds, ending public API access because of AI bots. TechCrunch, 2026-09-30 (secondary). https://techcrunch.com/2026/09/30/reddit-is-killing-rss-feeds-ending-public-api-access-because-of-ai-bots/
  3. Don't break the site (Rule 8). Reddit Help, read 2026-10-24 (primary). https://support.reddithelp.com/hc/en-us/articles/360043512931-Don-t-break-the-site
  4. Two Stories of DSA Data (Non)-Access from an NGO perspective. DSA Observatory (Oliver Marsh, AlgorithmWatch), 2026-10-02 (secondary). https://dsa-observatory.eu/2026/10/02/two-stories-of-dsa-data-non-access-from-an-ngo-perspective/
  5. Annual Report 2025. Coimisiún na Meán, 2026-10-07 (primary). https://www.cnam.ie/app/uploads/Coimisiun-na-Mean-Annual-Report-2025.pdf
  6. Commission designates ChatGPT, Reddit, Roblox under DSA (IP/26/1772). European Commission, 2026-08-31 (primary). https://ec.europa.eu/commission/presscorner/detail/en/ip_26_1772
  7. Social data capability catalog. EveryInfra, read 2026-10-24 (primary). https://api.everyinfra.com/api/v1/social/catalog
  8. Search: list (YouTube Data API). Google for Developers, read 2026-10-24 (primary). https://developers.google.com/youtube/v3/docs/search/list
  9. The Illinois Social Attitudes Aggregate Corpus (ISAAC) (arXiv:2609.27059). Hemmatian et al., 2026-09-22 (primary). https://arxiv.org/abs/2609.27059
  10. PoliTok-DE: A Multimodal Dataset of Political TikToks and Deletions From Germany (arXiv:2509.15860). Ruiz et al., 2025-09-19 (primary). https://arxiv.org/abs/2509.15860
  11. A longitudinal assessment of the persistence of Twitter datasets (JASIST). Zubiaga, 2018 (primary). https://doi.org/10.1002/asi.24026
  12. TikTok Research Tools Terms of Service. TikTok, 2026-01-22 (primary). https://www.tiktok.com/legal/page/global/terms-of-service-research-api/en
  13. Developer Policy. X, read 2026-10-24 (primary). https://developer.x.com/en/developer-terms/policy
  14. Finally, Access: How Article 40 DSA Changes Platform Research in Practice (Political Communication). Taylor & Francis, 2026 (primary). https://doi.org/10.1080/10584609.2026.2664157
  15. Platforms' Research API Data Access: What Users See vs. What Researchers can Retrieve (arXiv:2601.12390). Bekavac, Mayer, 2026-01-18 (primary). https://arxiv.org/abs/2601.12390
  16. Meta Content Library and API. Meta Transparency Center, read 2026-10-24 (primary). https://transparency.meta.com/researchtools/meta-content-library/
  17. WhichTok? Comparing Three TikTok Data Acquisition Tools (arXiv:2608.09917). Jeon et al., 2026-08-10 (primary). https://arxiv.org/abs/2608.09917
  18. TikTok's Research API: Problems Without Explanations (arXiv:2506.09746). arXiv, 2025-06-11 (primary). https://arxiv.org/abs/2506.09746
  19. Is the Sample Good Enough? Comparing Data from Twitter's Streaming API with Twitter's Firehose (arXiv:1306.5204). Morstatter et al., 2013-06-21 (primary). https://arxiv.org/abs/1306.5204
  20. Just Another Day on Twitter: A Complete 24 Hours of Twitter Data (arXiv:2301.11429). Pfeffer, Matter, Jaidka et al., 2023-01-26 (primary). https://arxiv.org/abs/2301.11429
  21. Regulation (EU) 2022/2065 (Digital Services Act). EUR-Lex, 2022-10-19 (primary). https://eur-lex.europa.eu/eli/reg/2022/2065/oj
  22. Commission fines X €120 million under the Digital Services Act. European Commission, 2025-12-05 (primary). https://digital-strategy.ec.europa.eu/en/news/commission-fines-x-eu120-million-under-digital-services-act
  23. What the X Fine Reveals About Data Access Under Article 40 of the Digital Services Act. Tech Policy Press, 2026-02-12 (secondary). https://www.techpolicy.press/what-the-x-fine-reveals-about-data-access-under-article-40-of-the-digital-services-act/
  24. Digital Services Act – sharing platform and search engine data with vetted researchers (summary of Delegated Regulation (EU) 2025/2050). EUR-Lex, 2026-01-28 (primary). https://eur-lex.europa.eu/EN/legal-content/summary/digital-services-act-sharing-platform-and-search-engine-data-with-vetted-researchers.html
  25. DSA data access portal. European Commission, read 2026-10-24 (primary). https://data-access.dsa.ec.europa.eu/
  26. Delegated act on data access under the Digital Services Act (DSA). European Commission, 2025-07-02 (primary). https://digital-strategy.ec.europa.eu/en/library/delegated-act-data-access-under-digital-services-act-dsa
  27. DSA Article 40(4)–(11) Data Access Guidance, V2. Coimisiún na Meán, 2026-05 (primary). https://www.cnam.ie/app/uploads/2026/05/DSA-Article-40-4-11-Data-Access_Guidance_V2_-.pdf
  28. The Great Data Standoff: Researchers vs. Platforms Under the Digital Services Act (ICWSM 2026). Goanta et al., 2026 (primary). https://ojs.aaai.org/index.php/ICWSM/article/view/42671
  29. Regulating a Floating Signifier: Interpretations of "Data" in the DSA Researcher Access Provision (Media, Technology and Governance). Annabell, 2026 (primary). https://doi.org/10.1177/29777984261486601
  30. Social Platforms Data Access Taskforce: Final Report. Smart Data Research UK / University of Sheffield, 2026-09-09 (deposited 2026-10-06) (primary). https://eprints.whiterose.ac.uk/id/eprint/246345/
  31. Towards More Granular Reasoning: Mapping the DSA Transparency Database Taxonomy to Platform Terms and Conditions (arXiv:2610.26226). Ranucci, Leijten, Graus, 2026-10-19 (primary). https://arxiv.org/abs/2610.26226
  32. Internet Research: Ethical Guidelines 3.0. Association of Internet Researchers (AoIR), 2019 (primary). https://aoir.org/reports/ethics3.pdf
  33. Digital Services Act (DSA): Information for EU users. Reddit Help, 2026-10-01 (primary). https://support.reddithelp.com/hc/en-us/articles/23595536875796-Digital-Services-Act-DSA-Information-for-EU-users
  34. Information Operations Exploit APIs to Manipulate Social Media (arXiv:2610.02591). Pote, Flammini, Menczer, 2026-10-01 (primary). https://arxiv.org/abs/2610.02591
  35. Drowning in AI Slop: How Social Media Platforms (Do Not) Label AI and Deepfake Content under EU law (arXiv:2609.38571). Rijsbosch et al., 2026-09-29 (primary). https://arxiv.org/abs/2609.38571
  36. Move Fast and Mend Things: Keeping Up with Evolving AI Harms Using Social Media Commentary (arXiv:2610.09082). Rowe et al., 2026-10-06 (primary). https://arxiv.org/abs/2610.09082
  37. A population-level assessment framework for flood-related wellbeing from public discourse in Ireland (arXiv:2610.03334). Luo, Morrissey, 2026-10-02 (primary). https://arxiv.org/abs/2610.03334
  38. Assessing flood-related wellbeing from public discourse in Ireland using large language model as judge, 2012–2025 (arXiv:2610.06330). Luo, Morrissey, 2026-10-05 (primary). https://arxiv.org/abs/2610.06330
  39. You Can't Solve AI Risk Without Solving the AI Evidence Problem. Tech Policy Press (Jen Rosiere Reynolds), 2026-10-21 (secondary). https://www.techpolicy.press/you-cant-solve-ai-risk-without-solving-the-ai-evidence-problem

Reference BL-33