SINCE DECLARING HIS PRESIDENTIAL CANDIDACY in 2015, Donald Trump has posted nearly 1,000 tweets critical of the press.

To be precise, as of this writing, it’s 990 tweets since June 16, 2015. For perspective, if you’re feeling lighthearted: That’s more than the number of goals Wayne Gretzky scored in his NHL career, more than the number of airports in Japan and China combined, and more than the number of Pokémon across all generations of the franchise.

ICYMI: “She identified herself as a reporter. He then walked behind her and punched her in the side of the head”

Trump’s prolificacy on Twitter is well documented, and some of his press-related tweets have captured vast public attention. For example, Trump tweeted in July a doctored video in which he wrestled a man whose head had been replaced by the CNN logo. It got hundreds of thousands of retweets.

Sign up for weekly emails from the United States Project

Off Twitter, of course, Trump has waged a rhetorical war on the press, threatening to sue various newspapers and calling journalists “the most dishonest human beings on Earth,” all while characterizing as “fake news” any story he dislikes.

That’s what prompted an NYU master’s student to start tracking Trump’s tweets critical of the press. “I took it on as a labor of love and hate, and I suffered through his tweets every few days to log them,” says Stephanie Sugars, who is pursuing a joint MA in journalism and international relations. “It seemed important to maintain a record of what has appeared to be a deliberate and sustained campaign to discredit the media as an institution.”

ICYMI: Worst headlines bloopers of 2017

Sugars was working as a researcher at the Committee to Protect Journalists last spring when she created the Trump-tweet spreadsheet that she recently shared with me. She was helping to launch a website that documents press freedom incidents in the US. (CJR is a partner.) Originally, she and others at CPJ thought it would include not only arrests and equipment seizures but also anti-press social media posts.

I suffered through his tweets every few days to log them. It seemed important to maintain a record of what has appeared to be a deliberate and sustained campaign to discredit the media as an institution.

“That just wasn’t manageable,” Sugars says. “We decided to pare the site back and not focus on tweets. I kept up with the spreadsheet, though, and continued to add to it, even after leaving [CPJ] when my term as a researcher there ended.”

TRENDING: Journalists have something new to worry about in February

Although the first version of the spreadsheet was pretty simple, with columns for the content of the tweet being logged as well as its link and date, the current version also includes columns for the target of the tweet and, for a person, his or her affiliation. (The spreadsheet doesn’t include retweets by Trump, but it does include those in which he copied and pasted the content of another user’s tweet and posted that content from his own account. The rest of the tweets are Trump originals.)

Sugars categorized the tweets, including ones Trump had deleted, by content type—using seven in total:

Insults: a tweet containing disrespectful or abusive content directed at a journalist or news organization.

a tweet containing disrespectful or abusive content directed at a journalist or news organization. Denigrate media: a tweet containing content that discredits, marginalizes, or undermines the media’s legitimacy.

a tweet containing content that discredits, marginalizes, or undermines the media’s legitimacy. Media bias: a tweet containing content accusing a journalist, a news organization, or the media in general of preferential coverage or bias.

a tweet containing content accusing a journalist, a news organization, or the media in general of preferential coverage or bias. Accusation of false reporting: a tweet containing content claiming that a news report, in whole or part, is incorrect, irrespective of the claim’s potential validity.

a tweet containing content claiming that a news report, in whole or part, is incorrect, irrespective of the claim’s potential validity. Call for firing, boycotting, or other action against a journalist, a news organization, or the media in general: a tweet containing content that calls for such direct action.

a tweet containing content that calls for such direct action. Leaks and leakers: a tweet containing content that criticizes the use of confidential sources or challenges the norms around their protection.

a tweet containing content that criticizes the use of confidential sources or challenges the norms around their protection. Threat: a tweet containing content that states or suggests that Trump will take action, in court or otherwise, against a journalist or news organization in response to a story.

The categories are not mutually exclusive, and some tweets were logged under more than one. Acknowledging the room here for subjectivity, Sugars says she made a good-faith judgment for each tweet, trying to be as consistent and systematic as possible.

ICYMI: 8 strategies for saving local newsrooms

The spreadsheet—990 tweets critical of the press—shows the terrible depth of Trump’s anti-democratic depravity and his willingness to scathe any journalist or news organization in his way.

I ENLISTED A SMALL GROUP of my students, from the Grady College of Journalism and Mass Communication at the University of Georgia, to review the spreadsheet and to help me identify notable items and trends in the data. To be clear: We did not conduct an academic study of the data. But we analyzed them as good journalists would.

Here are some of the highlights:

Over 250 tweets target an individual journalist, and roughly 80 percent of these tweets were posted in the pre-primary and primary periods. The top target, by far, was Megyn Kelly, with some 60 references. Trump’s feud with Kelly started at the first GOP debate and stretched through the general election. Joe Scarborough, who has repeatedly questioned Trump’s mental health, has 15 references. From the primary period to today, he has been the most regular target.

I refuse to call Megyn Kelly a bimbo, because that would not be politically correct. Instead I will only call her a lightweight reporter! — Donald J. Trump (@realDonaldTrump) January 27, 2016

Over 350 tweets target a news organization, and nearly two-thirds of these tweets were posted during the pre-primary and primary periods. The top targets have been The New York Times, which accounts for more than 20 percent of these tweets, and CNN, which accounts for more than 15 percent. Perhaps surprisingly, Fox News is the third-most targeted organization. Its references came in the pre-primary and primary periods, before the network fell in behind Trump after he secured the GOP nomination.

The term “fake news,” which has come to mean everything and nothing on Trump’s feed, appears over 140 times. The term “failing,” used to label a journalist or a news organization—most often The New York Times—appears over 100 times. The golden word “ratings” is mentioned over 45 times, typically to say or suggest that a journalist or news program would be doing better if it covered Trump differently (read: more favorably).

Gee, @meetthepress with @chucktodd was getting terrible ratings then, with me, he set records – I saved his job, but Chuck still not nice! — Donald J. Trump (@realDonaldTrump) December 7, 2015

The number of Trump originals outnumbers the tweets copied and pasted from another user, by roughly 8 to 1. The copied-and-pasted tweets were most numerous during the pre-primary and primary periods, when they were outnumbered only 2 to 1 by originals.

Recognizing that the categories are not mutually exclusive and that some tweets fell under more than one, “insults” is the largest and includes roughly 40 percent of the tweets. It is followed by “media bias,” which includes roughly 28 percent. The only category to include zero tweets in the pre-primary and primary periods is “leaks and leakers.” It is notable, too, that “insults” have been less numerous since the general election period, while “denigrate media” tweets have been more numerous.

Journalists mostly shrug off Trump’s occasional insults. But his rhetoric and his tweets matter. They can expose journalists to harassment and physical attacks, or threats thereof. In her book Settle for More, Kelly wrote that she received rape and death threats after Trump targeted her. “Every time he tweeted about me, it was like he flipped a switch, instantly causing a flood of intense nastiness,” she wrote.

Crazy @megynkelly is now complaining that @oreillyfactor did not defend her against me – yet her bad show is a total hit piece on me.Tough! — Donald J. Trump (@realDonaldTrump) March 17, 2016

Authoritarian leaders are already adopting Trump’s rhetoric to crack down on the press in their own countries. Syrian President Bashar Assad, for example, has employed the term “fake news” to dismiss claims that his regime used chemical weapons on its own citizens. Meanwhile, in the US, state and local elected officials are doing the same to undermine reporting that they don’t like. A Republican state senator in Colorado said a local paper was “fake news” after its editorial page (accurately) called out the lawmaker for cancelling a hearing on an FOI bill.

The spreadsheet—again, 990 tweets critical of the press—shows the terrible depth of Trump’s anti-democratic depravity and his willingness to scathe any journalist or news organization in his way. “After you read them all,” Sugars says, “you can’t help but see Trump for what he is: a man running a perpetual campaign against the press.”

Check out the spreadsheet here.

The following University of Georgia students contributed to the reporting of this story: Ariana Burgan, Abigail Sherrod, Kristen Adaway, Kayla Watkins, Claire Cicero, Rebecca Wright, Katie Pilson, and Keller Austin.

ICYMI: NY journalist handcuffed to railing over his head

Has America ever needed a media watchdog more than now? Help us by joining CJR today

Jonathan Peters is CJR’s press freedom correspondent. He is a media law professor at the University of Georgia, with posts in the Grady College of Journalism and Mass Communication and the School of Law. Peters has blogged on free expression for the Harvard Law & Policy Review, and he has written for Esquire, The Atlantic, Sports Illustrated, Slate, The Nation, Wired, and PBS. Follow him on Twitter @jonathanwpeters.