Skip to main content

NFTs and the carbon footprint dilemma

NFTs are disrupting the creative industry by providing artists with a new medium to sell their work and even make a profit with subsequent resales. Although this technique has been around for some years already, it is in 2021 when it has started flourishing driven by the new golden era for cryptocurrencies.

However, NFTs are being criticized for the carbon emissions they produce. Each transaction is estimated to produce 20 kg of CO2 [1] and there are often multiple transactions connected to a single artwork.

Carbon emissions associated to NFTs

An individual NFT transaction does not directly increase emissions. As SuperRare points out [2], Ethereum's blockchain has a fixed energy consumption at a given point in time regardless on how many transactions are processed.

While this statement is technically true, there are at least two ways NFTs are indirectly pushing carbon emissions further [3]:

  1. "More NFT transactions" means more money going to the miners as gas fees. As a consequence, miners acquire even more energy-consuming devices to meet the increasing demand.
  2. NFT traders need to buy Ethereum in the first place. This pushes the cryptocurrency price up, making mining a more profitable business and attracting more miners (and more devices).

    Ethereum's network, like Bitcoin, uses the energy-extensive Proof of Work mechanism. Even though Ethereum has plans [4] to cut its carbon footprint by 99% by shifting to the comparatively cleaner Proof of Stake protocol, it hasn't happened yet.

    To put things into perspective, Ethereum consumes just a small fraction of the energy that a single Bitcoin transaction requires [5].

    Offsetting carbon emissions to mitigate the effects

    On March 17th 2021, the crypto art gallery decided [6] to start offsetting the carbon emissions it generates by planting trees in rural areas. Two weeks later, the renowned NFT marketplace Nifty announced [7] its plans to become carbon-negative. Although these movements could be understood as "greenwashing", they are voluntary initiatives that help mitigate the negative impact on the environment while reinforcing blockchain as an alternative distribution channel for artists. The long term solution, though, should come from the shift to Ethereum 2.0 (proof of stake) and the increasing use of renewable energy.

    The open-source project cryptoart-footprint has calculated (roughly) the carbon emissions of the main NFT marketplaces. If you are an artist or a collector, you can see your estimated carbon footprint on

    Popular posts from this blog

    How to disable cookies on Google Analytics so that you don't need a consent banner

    The integration of Google Analytics into a website or blog is not GDPR-compliant by default . You must first obtain explicit consent of the end-users to store cookies, describing in your privacy policy how you intend to use collected personal data. This is the reason why most websites nowadays display an annoying (but necessary) consent banner. If you fail to do so or if you only ask for implicit consent, you are at risk of being fined. However, it is possible to disable cookies on Google Analytics (GA) respecting end-users privacy, so that you don't need to ask for consent. The downside is that you will not be able to distinguish the type of user (unique vs new vs returning) and you will miss some session insights. If these details are not relevant for you, here is how you do it. Disable Google Analytics cookies on a custom website If you have a custom website with full access to the source code, you can simply insert the script below between the <head>  and </head>

    How to convert a PWA into an Android app in 5 minutes

    In early 2021 I developed a memory game called Kobadoo  as a PWA (Progressive Web App) using ReactJS. It works pretty well as a browser game and gets decent traffic, but I wanted to reach more potential users by making it available on the official mobile app marketplaces. Since I didn't want to spend any time coding a native app, the easiest solution I found was to convert the PWA into a TWA (Trusted Web Activities) app. It barely takes 5 minutes to do it. TWA essentially allows you to easily create an Android app ( .apk file) that displays a full-screen browser view of your PWA. The user experience is almost identical to a web app and the views from the TWA will count as traffic on your web app. This means that if you have ads on your PWA, they will still work (and generate revenue) from the TWA. Another advantage is that every update you make on the PWA will be immediately reflected on the TWA without the need to submit a new version on Google Play. Here's how I convert

    How to jump to time offsets in HTML5 video

    Let's say that you have a 30-minute WEBM video file, from which you just want to play the following video segments , jumping from one to the other automatically  without interruptions : [00:01:25.00 - 00:02:25.00] -> from second 85 to 145 [00:11:40.00 - 00:11:55.00] -> from second 700 to 715 [00:20:26.00 - 00:21:07.00] -> from second 1226 to 1267 [00:26:11.00 - 00:28:01.00] -> from second 1571 to 1681 To increase the complexity, let's think that you have these video segments in a PHP variable $arrayVideoSegments  (normally the case if they were retrieved from the database).   $arrayVideoSegments[0]->startTime = 85   $arrayVideoSegments[0]->endTime = 145   $arrayVideoSegments[1]->startTime = 700   $arrayVideoSegments[1]->endTime = 715   $arrayVideoSegments[2]->startTime = 1226   $arrayVideoSegments[2]->endTime = 1267   $arrayVideoSegments[3]->startTime = 1571   $arrayVideoSegments[3]->endTime = 1681 The fo