Zero Cost to You.
Zero Carbon for Your

Cloverly is an easy way to offset the carbon footprint of your customers' online transactions.
Explore how it works.

Or Get Started

How It Works

Api icon

Use the Cloverly API to fetch real-time carbon offset costs.

Fetch carbon costs for multiple scenarios, such as shipping.

Cart icon

Integrate Cloverly directly into your checkout experience.

Customers, at checkout, have the option of paying a little extra to offset their carbon footprint.

Solar icon

Cloverly will purchase wind or solar energy credits on your behalf.

If a customer chooses to green their order, a portion of the offset cost will be used to purchase energy credits.

Coin icon

Cloverly charges the customer 25 cents per transaction. Everything else goes toward renewable energy purchases.

Marker icon

Our software will display exactly where we making the purchase. We always try to find the closest offset.

Make something truly incredible.

Ready to offset a shared ride? some new shoes? your pizza delivery?

Truck icon

Example: Shipping Offsets

Shipping a table from Oakland to Brooklyn

Make a simple call with our API to provide Cloverly with a start and end point along with the weight. Once that's received, we return a payload with your carbon offset details to display to the end user. From there you can request a purchase with our /purchases endpoint.

curl \
-d '{"from":{"zip":"35209"},"to":{"zip":"94043"},"weight":{"value":94,"units":"kg"}}' \
-H "Content-type: application/json" \
-H "Authorization: Bearer public_key:47800ea0ee541b4c"

require 'faraday'
conn = => '') do |req|
  req.url '/2019-03-beta/purchases/shipping'
  req.body = '{"from":{"zip":"35209"},"to":{"zip":"94043"},"weight":{"value":94,"units":"kg"}}'
  req.headers['Content-Type'] = 'application/json'
  req.headers['Authorization'] = 'Bearer public_key:47800ea0ee541b4c'

const request = require('request');
const options = {
    method: 'post',
    url: '',
    body: JSON.stringify({"from":{"zip":"35209"},"to":{"zip":"94043"},"weight":{"value":94,"units":"kg"}}),
  headers: {
    'Content-type': 'application/json',
    'Authorization': 'Bearer public_key:47800ea0ee541b4c'
request(options, function(error, response, body) {

package main

import "net/http"
import "io/ioutil"
import "fmt"
import "bytes"

func main() {
  client := &http.Client{}

  var requestData = []byte(`{"from":{"zip":"35209"},"to":{"zip":"94043"},"weight":{"value":94,"units":"kg"}}`)
  req, _ := http.NewRequest("POST", "", bytes.NewBuffer(requestData))
  req.Header.Add("Content-type", "application/json")
  req.Header.Add("Authorization", "Bearer public_key:47800ea0ee541b4c")

  resp, _ := client.Do(req)

  defer resp.Body.Close()
  body, _ := ioutil.ReadAll(resp.Body)


import requests
url = ''
headers = {'Content-type': 'application/json', 'Authorization': 'Bearer public_key:47800ea0ee541b4c'}
data = '{"from":{"zip":"35209"},"to":{"zip":"94043"},"weight":{"value":94,"units":"kg"}}'
r =, headers=headers, data=data)

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{"from":{"zip":"35209"},"to":{"zip":"94043"},"weight":{"value":94,"units":"kg"}}');
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-type: application/json', 'Authorization: Bearer public_key:47800ea0ee541b4c'));
$r = curl_exec($ch);
echo $r;

Offset Breakdown

  • From94621
  • To11223
  • Package Weight250kg/551lbs
  • Carbon Produced86kg/190lbs
  • Cost to Offset$0.47*
  • Cloverly Fee$0.25
  • Total Cost$0.72

* Prices are as of April 17, 2019. Subject to change based on market prices.

Try It Free

Start Offsetting Today

Cloverly can work in a variety of other scenarios. Rideshares, grocery deliveries, online orders, late night pizza orders—the list goes on. That's where you come in.