Astral Projects | Spatial dApps


Tools & Tech
Solidity, Ethereum, Hardat, The Graph, Ethers


  • Build a sustainability-linked bond in Solidity.

Introducing 🌱 Sprout

Sprout is a sustainability-linked bond in Solidity, to enable the issuance and repayment of a corporate or government bond on Ethereum.


Blockchain bonds hold promise to offer significant savings in the cost of issuance and administration. Our aim is to link the bond structure to sustainability metrics submitted by an off-chain oracle, which is analyzing measurements of ecological health.

The bond contract must be adapted so that the borrower (i.e. government or corporate entity) is financially incentivized to meet sustainability targets. In our case - a simple prototype to illustrate the capability - we imagine the Greater London Authority issuing a sustainability-linked municipal bond.

In this scenario, the GLA wants to raise 1000 ether. They issue 1000 bonds with a face value of 1 ETH.

From the investor's perspective, it is a fixed-income instrument: they are paid a coupon rate of 3% of the bond's face value (i.e. 0.03 ETH) each year for 10 years, then are repaid the full face value once the bond matures.

This means that each year the GLA must pay 30 ether into the contract to repay bond holders.

However, we also want to incentivize the GLA to improve air quality in London. We will do this by linking the repayment amount to measurements of air quality, which will be calculated and submitted on an annual basis by an oracle. In this simple example, we are finding the average NOx level across London based on data generated by DEFRA, the UK Department for Environment, Food and Rural Affairs. (We will leave aside the possibility of collusion between DEFRA and the GLA for now - though this points to the importance of carefully designing the game theory of decentralized spatial finance products.)

In addition to the money repaid annually to pay bond coupons, the bond is designed so the Greater London Authority is required to pay an additional amount, based on the mean NOx levels (in µg m-3) derived from analysis of the DEFRA dataset. This variable rate will provide an economic incentive to the institution to improve air quality. We suppose that the extra funds collected based on this variable rate might be transferred to the agency tasked with improving air quality - a sort of cybernetic control system for adapting government budgeting based on observations of environmental health. We chose not to transfer the additional funds raised to investors because we did not want lenders to profit from degrading air quality. It is worth emphasizing: our aim here is to demonstrate the feasibility of sustainability-linked smart contracts, not to make recommendations about the most appropriate design of these instruments.

For this bond, the Greater London Authority will be required to pay 1 ether for each measured µg m-3 of NOx.

Thus, for the term of 2003-2013, the borrower could expect to see the following dynamics:


Summary figures:

Total capital raised1000 ether
Total paid coupons330 ether
Total variable payments505.38 ether
Total repaid1835.38 ether