A quote toot is just a link

December 30, 2022

As the Twitter exodus continues, there’s been a lot of talk on Mastodon about wanting to boost posts while adding a comment above them, like Twitter’s “quote tweet” feature.

Many people both supportive and fearful of adding quote toots are, in my view, overlooking a basic fact. Mastodon posts are just web pages, and a quote toot is just a link.

Background

The quote toot was originally rejected as too much of an abuse vector by the lead developer of the main Mastodon project. But he now feels less strongly about it.

Meanwhile, the feature has been widely championed for its value to Black Twitter (good roundup of perspectives here). Other fediverse software compatible with Mastodon is adding some form of quote toot support, including the new iOS app Mona and the Hometown fork.

What’s a quote toot?

Every Mastodon post is a web page with a URL. You can copy-paste that URL into the compose box after your comment and toot away. So, what would have to change about the default Mastodon experience1 to make this the same as a quote tweet on Twitter?

  1. Rich preview. The link preview for a Mastodon post is very uninformative. It only shows the post author’s name and the name of their server. For parity, the preview would have to include the author’s profile pic, the text of the post (possibly abbreviated if long), and thumbnails of any attached images or videos.
  2. Interactable. Clicking through to the original post should allow you to reply to it, favorite or boost it, or follow the author. Currently, Mastodon’s official web client instead opens the post in a new tab on the original server, which means that if you’re not on that same server, it’s difficult to interact.
  3. Notifies the original poster. If you link to someone’s post, they won’t receive a notification, unless you also @-mention them.
  4. Button next to every post to do it. Linking requires clicking the three-dots button, selecting “Copy link to post,” going to the compose box, and pasting. On Twitter, the retweet button and then “Quote Tweet” does this more conveniently, encouraging the behavior.
  5. Built-in search for all links to a post. On Twitter, under any post that has been quote tweeted, there is a link to list out all the quote tweets—i.e., to automatically search for all the tweets that link to that tweet.

So, when we say we want quote toots, which of these features are important? And how does it make sense to implement them?

First, Mastodon and its clients should absolutely fix the bad previews. Not just for this use case, but in general. Link previews look crummy across the board: if I link to a blog post that has an image attached to it, Mastodon displays the image smaller than Twitter or Facebook does, and it doesn’t show my post’s subtitle. Mastodon should also generate better preview cards for its own posts—to make them look better when linked on Mastodon and also when shared to proprietary social networks and messaging apps. This is just about making links work better.

Second, of course links within Mastodon to Mastodon posts should open inline and be interactable. The current behavior actually makes linking from Mastodon to Mastodon less functional than linking from Mastodon to Twitter. No sense in that.

…but don’t copy everything

On the other hand, it’s good that you can link to things on the internet without notifying the publisher, whether the content is on Mastodon or not. Such a link could be abusive, but it could also be a way of warning someone about an abuser. Linking to a post—also known as quote tooting it—shouldn’t notify the original poster unless you opt into that by tagging them.

(There is actually a blog analogy for this notification: pingbacks! In the heyday of personal blogs, when another blog mentioned yours, their software might notify your blog, which might then automatically show the pingback at the bottom of your post. Pingbacks seem to have faded away as people moved away from personal blogs onto Twitter and Facebook and Medium and the abuse of pingbacks for spam and DoS attacks began to outweigh any benefits. In any event, they were always an opt-in feature.)

I also don’t want a button next to every post that automatically cues up a new post that links to that one (i.e., a quote toot button). Linking should be allowed, but it should be easier to just reply. As I previously wrote:

it was, in fact, a blessing that Mastodon’s design was steering me towards talking to people rather than pointing at them. When you quote, you branch the conversation to talk about someone, and it’s not always clear if the original poster is welcome to participate in the new branch. You’re more likely to exchange ideas and learn something by replying. [Linking manually] adds enough friction to avoid becoming the default interaction mode.

Obviously, this particular feature is trivial for client apps to add, and some will. But if it becomes widespread, I predict it will lower the quality of conversations on the fediverse.

Lastly, posts should absolutely not have a list of all the posts that have linked to them (i.e., a list of quote toots), attached to the post. It’s hard enough already to prevent snotty replies from showing up. Please don’t put potentially obnoxious mentions under my posts as well. (On that note, “Hide reply” is one Twitter feature that Mastodon really should copy.)

To mitigate the potential abuse vector of quote toots, a compromise idea that’s been proposed is maybe you could only allow certain posts to be quote tooted, or only allow people you follow to quote toot you.

But this is really saying we would require permission to link to a public web page.

That’s not how the web works or has ever worked. And I don’t think that should change. It would have a chilling effect on online speech if it became a norm that linking to a public web page requires permission.

If you don’t want people to link to a web page, require authentication. On Mastodon that means a followers-only post.

Throughout this blog post, I’ve claimed a quote toot is just a link. The “quote” part of the name, inherited from Twitter, has misled us. Treating them as links clarifies our thinking, whether you agree with my conclusions or not.

It’s entirely possible for a Mastodon server implementation to treat a “quote toot” as something different from a “toot that happens to contain a link,” and for clients to rely on this distinction to render links differently.2

But this doesn’t solve any fundamental issue, and will confuse users, violating their expectations.

Suppose I’ve disabled quote toots for one of my posts. No one can quote toot it. But someone links to it with a rude comment or disagreement. As an average user, I’m likely to be surprised and dismayed when I find out that happened. Didn’t I turn that off? How can they do that?

And then you, the Mastodon admin or developer, can try to explain to me, “No no no, quote toots and links are two completely separate things!” But what I walk away with is: “Mastodon is too complicated, and its privacy settings can’t be trusted.” The result: there’s likely to be strong user pressure to, if someone disables quote toots, also ban linking to that post at all.

Conversely, if I paste the URL to another post into my post, and it shows up with a crappy link preview, instead of displaying as a nice quote toot, I’m gonna be frustrated. How do I get it to look pretty and work right like other people’s? Now again Mastodon has a usability issue.

The natural solution is for clients to detect when a link to a Mastodon post3 is being posted, and automagically upgrade that from a link to a quote toot. But then if we’re not careful, and if we have the ability to disable quote toots, we’ve sleepwalked into creating a total linking ban again.4

They’re links. There’s no getting around the fact that this thing Twitter calls a “quote tweet” is just a link to a web page, and always was, and that didn’t change because one day Twitter decided to give them nicer previews, a dedicated button, and a dedicated search link.

  1. I say “the default Mastodon experience” because some clients have long implemented parts of this. For example, Pinafore offers a somewhat richer preview where the text of the linked post is visible by default. And in the iOS app Toot!, linked Mastodon posts open in-app so you can directly interact with them. 

  2. One fork appears to have just done this

  3. Technically a link to an ActivityPub status. 

  4. I don’t know if fediverse power users and developers understand just how confusing Mastodon’s privacy model already is to most people. I’ve had to explain over and over to new people that I can’t boost their introduction or hashtagged post that they obviously intended to make public because they’re posting as followers only. People do not intuitively grasp the difference between the lock icon on an individual post, meaning it’s visible to followers only, and the lock icon on your profile, meaning people have to request to follow. Adding even more complexity by having posts that are public, but can’t be quote tooted (a special kind of link), but can still be linked to as long as it isn’t the special kind of link, is going to overwhelm just about everybody. 

You can follow me on Mastodon or this blog via RSS.