This Chrome Extension Uploads All Your Old Tweets to Bluesky
If you're one of those folks who set up an account on Bluesky back in late 2022 but wandered away because no one seemed to be using it, I'm here to inform you that the decentralized social network is good now, and you should definitely give it another try. Especially if you feel freshly motivated to kick your X habit. Even better-there are now a bunch of third-party tools that make the transition a lot easier.
I've already written about Sky Follower Bridge, an extension for Chromium browsers, Firefox, and Github that makes it easy to find all of the people you used to follow on X (and those who followed you) on Bluesky. This weekend, I tested out another indie developer tool that will also let you transfer over your posting history-that is, most of your old tweets-in just a few simple steps.
The extension is called Porto, and it's currently available for Chromium browsers (though plans are in the works to cover Firefox and release the code open source as well). Once you add it to your browser and configure it, you can use it to import many of your tweets and posts to the new social app-even those that predate Bluesky's beta release in late 2022.
There are some limitations: As of this writing, the extension is only able to load your original tweets (and related media). By default, it excludes replies, quote tweets, and retweets, for obvious reasons, as that would require also importing posts not tied solely to your account. Likewise, Porto currently can't handle importing any external links attached to your tweets, so if you ever tweeted a URL with a comment attached, only the orphaned comment will appear on your Bluesky profile, minus the link to whatever you were talking about.
On the bright side, the extension is extremely easy to use, and it's only going to get better. Porto was built by a trio of independent developers out of Nepal-undergrad students Ankit Bhandari, Yogesh Aryal, and Adarsh Kunwar. I talked with Bhandari over email to ask him about the development process and future plans for the donation-supported extension, and he told me about the work that is already underway to expand its functionality.
Retweets and replies were initially excluded because "we can't or don't want to import other users' tweets," Bhandari said. However, the developers are exploring a few different options for bringing in quote tweets and to address the issue importing and displaying links. Additionally, support for videos and threaded tweets is coming with the next update, expected later this week. Other tweaks include making it so the extension can be paused and restarted or continue running in the background even if you close it out.
Make a clean break without losing your postsBhandari said he was inspired to create the extension because he was a big fan of Bluesky's decentralized ethos-your Bluesky profile is less a part of a specific social network and more your own little microblogging website. It has been built so that if Bluesky itself ever goes away, you'll be able to easily take all of your content with you elsewhere. (X is less flexible, thus the need for extensions like Sky Follower Bridge and Porto.)
"I actually loved Bluesky's approach of customization and moderation, so it inspired me a lot to get into it," Bhandari said. "I think I joined Bluesky when there were 5,000 users, and [was] the first Nepali to join the platform...[a] couple of months after BlueSky launched on public beta invite."
Porto launched about two weeks ago, and is seeing an uptick in users as Bluesky grows at a rapid clip-the social network has added some five million users since late October, when Elon Musk announced X was changing the way blocking works on that platform. "People are liking the extension, as most folks don't want their past content to vanish," Bhandari said, adding that most Porto users seem to be people who are deactivating their X accounts. (I'm one of them.)
While importing your tweets is a pretty simple process, there is a bit of setup involved. The first thing you'll need to do is request your data archive from X, as Porto doesn't work by logging in to your X profile, but by importing messages directly from your offline archive. If you're worried about your privacy, consider that all of your tweets are already online and public-facing. Moreover, Bhandari explained, the extension uploads and analyzes only the "tweets.js" file that stores your posts, and doesn't touch your DMs; uploading to Bluesky actually takes place locally, from your computer.
To request your X data, log in to the site on desktop and click More in the left-hand sidebar. In Settings, select Your Account, and then Download an archive of your data. You'll have to enter your password again. Click Request archive on the next screen and then...wait around for X to send you an email notifying you that it's ready for download. (X says this can take up to 24 hours but it took about twice that long for me.)
Once you have your archive in hand, add the Porto extension to Chrome and log in to it with your Bluesky username and password. From there, click Select a folder and upload your X archive from wherever you saved it on your computer. You can then enter a date range for the tweets you want to import-and you can go all the way back to the day you joined X/Twitter, even if it predates the founding of Bluesky.
Once you've set your date range, click Analyze tweets. After a moment, the extension will tell you how many posts it found to import, as well as how many retweets/replies will be excluded. Click Import to Bluesky and you're free to wander away to use the internet as usual-just don't close the extension or shut off your computer until it finishes processing.
Because it's working from your archive instead of having to access X to find your tweets, Porto actually moves pretty fast-I was able to add more than a decade of tweets to my profile in an hour or two.
It can be a little difficult to figure out whether all your tweets have been brought over, since the total number represented in your archive includes replies and retweets that won't make the leap, and the number of posts the extension tells you it is going to import doesn't match the number that actually showed up on my Bluesky profile-though this is due to a front-end "data analysis issue" that will be fixed shortly, Bhandari said.
Anecdotally, all of mine seemed to come across, including any photos or screenshots I shared. I picked a bunch of tweets at random and checked if they'd been imported, and all had. (Bhandari also told me that as the extension adds functionality, running Porto again will also let you bring in more of those previously excluded posts.)
As the extension runs, you can even watch your Bluesky post count grow in real time-I now look like one of the most Extremely Online people on the network, with around 3,500 posts, even though I only joined in mid-2023 and started actively using it just a month ago. Even better, I can nuke my X account from orbit and never, ever think about it again.