select all

It Is Incredibly Easy to Fake a Screenshot. Here’s How

In an online era in which everything is a hoax, the screenshot carries with it an inherent air of authenticity. Screenshots can be subliminally assumed to be authentic, mostly because they are more difficult to doctor than text.

This week, a Twitter user named @BISCUITS faked a DM conversation with Trump, eventually getting more than 100,000 retweets.

Faking screenshots of public figures saying odd things is something of a running joke online — especially for verbose blowhards like Trump — and the format of wrapping the quote in a social-media aesthetic that signifies off-the-cuff frankness heightens the joke. (I love to explain jokes.)

I can, for example, write:

President Obama, in his G20 summit address, said “Pee pee poo poo.”

But it’s not convincing at all. Anyone can mash the tiny letter buttons on their keyboard, and literally attribute any quote to literally anyone else! It’s easy!

But what about:

That looks pretty legit. It’s got the right font, the right spacing, the verified blue checkmark, the whole shebang.

But guess what? That tweet … is fake. It was really easy to doctor, in fact, so long as you have a rudimentary understanding of web development. I’m going to show you how.

First, we’ll hit some basics. All web pages are built on a language called HyperText Markup Language, otherwise known as HTML  (most now also employ other languages like JavaScript, but we don’t have to worry about that). Whenever you load a web page, your browser downloads that page’s HTML file from a server, and stores it locally on your computer. Within that local copy, you can do whatever you want.

Most modern web browsers offer developer tools that let you peek under a page’s hood and edit these local HTML files. For the purposes of this demo, we’re going to use Chrome.

Let’s have some fun with Donald Trump now. The first step is to right-click the text you want to edit and select “Inspect Element.”

This will open up the browser tools and let you look at the page’s HTML. It will even scroll through the code and highlight the parts that correspond to the part of the page you clicked on. Seen here, as I mouse over the part of the HTML containing the Donald’s tweet text, it’s highlighted on the page itself.

Now comes the fun part. Double-click on the HTML containing the tweet text, which allows you to edit it. (You might need to uncollapse this section of code by clicking the gray arrows on the left.) Type in whatever you want and hit enter.

There it is, a fake tweet that looks just like the real thing. This is because you’re only editing a small part of the code and retaining much of the original. Modern websites are generally styled using CSS, which dictates everything from font choice, sizing, and formatting to the spacing between different parts of the page.

You can take it to the next level and edit other elements of the page including the number of interactions and time of publication. If it’s text you can highlight, it can be altered. If you want to take it a step further and are handy with how HTML handles images, you can swap out those as well.

This method works on pretty much any web page. It works on Facebook, for instance.

It works on the websites of well-respected and generally reliable news publications.

And now you know how to fake a screenshot all on your own.

To recap:

  • “Inspect Element”
  • Double-click to edit
  • Enjoy the result

The larger point I’m trying to make here — other than the fact that goofing around is very fun — is that screenshots are incredibly easy to fake, and that anyone with a modern browser has the tools to do so. In reality, they’re no less verifiable than plaintext. That’s why when Twitter revoked the API access of Politwoops, which archived the deleted tweets of politicians, the alternative method of taking screenshots was seen as a less-than-perfect solution. So, if you see someone passing around a screenshot on social media claiming that it’s legit, a healthy dose of skepticism is in order.

How to Fake a Screenshot