CooRTweet

Nicola Righetti, Paul Balluff

Coordinated behavior is a relevant social media strategy employed for political astroturfing (Keller et al., 2020), the spread of inappropriate content online (Giglietto et al., 2020), and activism. Software for academic research and investigative journalism has been developed in the last few years to detect coordinated behavior, such as the CooRnet R package (Giglietto, Righetti, Rossi, 2020), which detects Coordinated Link Sharing Behavior (CLSB) and Coordinated Image Sharing on Facebook and Instagram (CooRnet website), and the Coordination Network Toolkit by Timothy Graham (Graham, QUT Digital Observatory, 2020).

The CooRTweet package builds on the existing literature on coordinated behavior and the experience of previous software, particularly CooRnet, to provide R users with an easy-to-use tool to detect various coordinated networks on Twitter and any other social media. It further opens up the possibility of cross-platform analysis.

Install

Install from CRAN

install.packages("CooRTweet")

Quick Start

The package is compatible with any data, provided that it is formatted appropriately. It offers comprehensive support for data obtained from the Twitter Academic API in the JSON format. This format is generated by the function get_all_tweets from the R package academictwitteR, which simultaneously retrieves tweets and user information. Additionally, the simple function prep_data aids in formatting the data as required by the package.

prep_data() removes incomplete and duplicate shares by default. Set drop_na = FALSE or drop_duplicates = FALSE to retain them.

detect_groups() can select pairs within one inclusive interval of time differences. For example, time_window_low = 10, time_window = 30 includes pairs shared exactly 10 or 30 seconds apart, as well as those between them. The lower limit defaults to 0.

For a walk-through of the package, see the vignette source.

generate_coordinated_network() returns edges above the median edge weight by default (subgraph = 1). Set subgraph = 0 to return the full network with threshold indicators on its edges.

German elections data

The installed package includes german_elections_sample, a 97,413-row anonymized temporal excerpt for URL and image coordination examples. It is not representative of the full campaign and cannot reproduce the paper’s figures. Load it with data("german_elections_sample", package = "CooRTweet").

The full anonymized dataset is not included in the installed package. The same data previously distributed as german_elections is now available only in the source repository as data-raw/german_elections_full.rda. From the root of a repository checkout, load it with:

load("data-raw/german_elections_full.rda") # creates german_elections

Use this full dataset with the paper reproduction script. The script is kept in the source repository under vignettes/, but is not included in the installed package or built as a package vignette. Some plot panels require non-public data and remain commented out in the public script.

Citation

Righetti, N., & Balluff, P. (2025). CooRTweet: A Generalized R Software for Coordinated Network Detection. Computational Communication Research, 7(1), 1. https://doi.org/10.5117/CCR2025.1.7.RIGH

References

Righetti, N., Kulichkina, A., Almeida Paroni, B., Cseri, Z. F., Aguirre, S. I., & Maikovska, K. (2025). Mainstreaming and transnationalization of anti-gender ideas through social media: the case of CitizenGO. Information, Communication & Society, 1-24.

Barrie, C., & Ho, J. C. T. (2021). academictwitteR: an R package to access the Twitter Academic Research Product Track v2 API endpoint. Journal of Open Source Software, 6(62), 3272, https://doi.org/10.21105/joss.03272

Giglietto, F., Righetti, N., & Rossi, L. (2020). CooRnet. detect coordinated link sharing behavior on social media. R package version 1.5.0. https://github.com/fabiogiglietto/CooRnet

Giglietto, F., Righetti, N., Rossi, L., & Marino, G. (2020). It takes a village to manipulate the media: coordinated link sharing behavior during 2018 and 2019 Italian elections. Information, Communication & Society, 23(6), 867-891. https://doi.org/10.1080/1369118X.2020.1739732

Graham, Timothy; QUT Digital Observatory; (2020): Coordination Network Toolkit. Queensland University of Technology. (Software) https://doi.org/10.25912/RDF_1632782596538

Keller, F. B., Schoch, D., Stier, S., & Yang, J. (2020). Political astroturfing on Twitter: How to coordinate a disinformation campaign. Political Communication, 37(2), 256-280. https://doi.org/10.1080/10584609.2019.1661888

Kulichkina, A., Righetti, N., & Waldherr, A. (2024). Protest and repression on social media: Pro-Navalny and pro-government mobilization dynamics and coordination patterns on Russian Twitter. New Media & Society, https://doi.org/10.1177/146144482412541.

Righetti, N., Giglietto, F., Kakavand, A. E., Kulichkina, A., Marino, G., & Terenzi, M. (2022). Political advertisement and coordinated behavior on social media in the lead-up to the 2021 German federal elections. Dusseldorf: Media Authority of North Rhine-Westphalia, 6. https://www.medienanstalt-nrw.de/fileadmin/user_upload/NeueWebsite_0120/Zum_Nachlesen/BTW22_Political_Advertisement.PDF

Coordinated Sharing Detection Service powered by CooRTweet

CooRTweet also powers the Coordinated Sharing Detection Service, a web-based service built on a streamlined version of the R package. It enables data journalists, fact-checkers, researchers, and other practitioners to analyze and visualize patterns of coordinated sharing in social media data.

Acknowledgments

This work was partially supported by the vera.ai project, funded by the European Union through the Horizon Europe program (Grant Agreement ID 101070093).