Founding Circulate!

Authentic walkthrough of my journey building Circulate for the past 4 months

Aahaan Maini
11 min readAug 8, 2022

TLDR Video

Problem Exploration

After a couple weeks researching and invalidating meaningful problems to solve, one of my close friends Kabeer posted a message in our group chat with his Canadian Red Cross blood donation card.

Last summer, I designed an artificial red blood cell using nanotechnology because of crushing demand for blood because it cannot be artificially created.

My first thought was the wastage of blood during the supply chain from donation → transfusion.

India was one of the leading countries with consistently high blood wastage rates, including reportedly 600,000 litres wasted over the last 5 years. [Source: Times of India]. That’s around 2 million possible transfusions lost in the last 5 years alone.

After pitching the problem to one of my coaches Michael, he questioned whether I really sought understanding on the overall problem. He theorized that if there were let’s say 50M people short of blood globally, and only a couple million wasted, we need to focus our energy on the problem that will have the most impact. The time we would spend building a solution for either one will be similar, it’s about what is the most effective use of that time.

And he was right! Globally, there is a blood shortage of about 100 million units per year, due to a lack of donations.

Source: WHO

At this point, the main decision on my mind was which geographical location to commit to because that was crucial to understanding the specific causes behind the blood shortage.

After discussing with a couple colleagues about what are the main metrics to scope down geographically:

India, India, India!

Fast forward a couple of days, and everything made sense to tackle the blood shortage in India.

According to IndiaSpend, in 2016–2017 India faced an annual blood shortage of 2,334,304 units of blood, representing 18.17% of the total volume. This is without factoring in wastage, contamination and misuse.

To develop a better understanding, the first step was to perform value stream mapping. This was to follow the exact process a red blood cell takes from the point of donation to transfusion.

Part 1
Part 2

This was the first instance where the lack of perspective, from sitting halfway across the world from India, revealed itself. Doing as much research as possible resulted in one value stream. Yet, as soon as we called up a doctor currently working in a blood bank, the real process was vastly different.

Identifying Root Causes

Building on top of my previous point, this entire phase of attempting to uncover and then understand the lowest-level causes of the shortage was exclusively done by talking to people on the ground.

  1. Lack of adequate blood supply
    According to the WHO, each country should maintain a minimum baseline blood reserve of 1% of the total population. In India, the total number of safe donations isn’t enough to sustain the population. Further problems can be grouped under this category such as lack of a donation culture and lack of access to blood banks. Learn more.
  2. No coordination between various stakeholders
    India’s blood system is incredibly disorganized with rarely any forms of communication between different types of blood banks, much less any system for collaboration. Learn more.

3. No infrastructure for the safe transportation of blood
25% of all the blood banks in India collect 66% of the total volume. There is no way to deliver blood from areas of oversupply (such as large urban hospitals) to areas of shortage (such as rural centres) leading to wastage on one side and increased deaths on the other. Learn more.

Scoping Down to Blood Transportation

At this point, we decided to focus on tackling #3 and developing proper infrastructure for blood transportation.

Why? Primarily because without blood transportation, even if there is a sufficient blood supply and coordination between stakeholders, there will still be a severe shortage in certain locations (especially rural areas).

Furthermore, even in the current broken system, enabling blood transportation will directly reduce the number of deaths due to the blood shortage. This is independent of the number of donors or blood bank coordination.

Transportation of blood is the needle-mover. This was repeatedly validated by the directors of Naryana Health and PathCare Labs, doctors in the Indian army/navy, directors at the Indian Red Cross society and doctors/technicians working in blood banks across the country.

Understanding the Status Quo

Our goal at this time was to understand exactly what happens when a hospital has a shortage of blood.

9/10 times the patient is responsible for delivering the blood for their transfusion, which leads to two possible scenarios.

First, someone from the patient’s family/friends must physically drive up and get the blood from the closest available location. To give you an idea of the brutal driving conditions in India, the average ambulance response time of over 24 minutes! The driving is highly disorganized and stressful with a combination of cars, bikes, and people slipping through every gap possible to try to get ahead (my first-hand recount from my trip to India). This would be difficult enough if the driver wasn’t carrying a literal time bomb that can only be exposed to the Indian heat for a very short time. Unfortunately, this doesn’t often happen and the blood gets contaminated due to it not being stored in the proper container.

In the second case, the family/friends leave their jobs and routines to spend all their time begging people on the street to donate if they are the same blood type, even offering hundreds of rupees in compensation (which is illegal). While that may get people in the door, the time it takes for the subsequent screening and compatibility tests only add salt to the wound. By the time enough suitable donors are found, the patients condition is severely deteriorated.

The final scenario is the worst of all. A woman from a nearby village walked two kilometres with a ruptured uterus to a hospital in Baitalpur. Bleeding heavily and requesting urgent medical attention, she was turned away because the hospital had no blood. They sent her to the next closest hospital 35 km away, but sadly she passed away on the journey.

If it wasn’t previously, the problem was now explicitly clear to us.

Building the Solution MVP

A quick recap of where we are at right now:

  • Attempting to solve the deaths due to the blood shortage
  • Focusing our energy in India
  • Tackling the root cause of no transportation of blood

The first question that comes to mind when building transportation infrastructure is where does the blood need to go?

To answer this, the primary component of Circulate’s solution is a proprietary load-balancing algorithm to output how much blood needs to be transported between all the hospitals and standalone blood banks.

Input data required:

  1. Current inventory of each component of blood at each hospital
  2. Expiry date(critical because of the massive blood wastage problem in India):
    Red blood cells are stored in refrigerators at 6ºC for up to 42 days
    Platelets are stored at room temperature in agitators for up to 5 days
    Plasma and cryoprecipitate are frozen and preserved in freezers for up to one year. After defrosting, the shelf life is 5 days
  3. Blood type
  4. Previous donation data
  5. Previous consumption data

For simplicity’s sake, I decided to create some very basic mock data just to build out the logic before heading to India.

The population column is how many people the blood bank serves, just to calculate their ideal value based on the WHO 1% reserve rule.

The next step is to combine the donations and consumption to calculate the updated current inventory:

Q: How do we distribute the blood “fairly” across the entire network?

A: A bottom-up approach to match each blood bank to a network baseline.

Determining the network baseline begins by adding up all the inventory to calculate the total supply of blood. Additionally, adding up all the ideal values determines the total demand for blood (this can also be done by taking 1% of the entire network, which works for urban areas).

All we need to do now is find the percentage of demand that can be fulfilled by the entire network, and that becomes the baseline for each blood bank.

Q: Which blood banks require blood? (Part 1 of the question)

A: Multiply the baseline by each blood bank’s ideal value. Then subtract that by their current inventory.

Q: Which blood banks will deliver the blood? (Part 2)

A: The algorithm starts by pairing up the largest excess (D) with the largest shortage (A). Now one of two things can happen, which will lead to different next steps:

  1. The largest excess IS enough to fulfill the largest shortage:
    1. The largest excess sends the number of shortage units
    2. The blood bank with the shortage is removed from the database
    3. The algorithm is rerun → most often both the giver and receiver banks change
  2. The largest excess IS NOT enough to fulfill the largest shortage (Our case):
    1. The largest excess (D) sends how many units they have excess (58)
    2. The blood bank with the largest excess (D) is removed
    3. The algorithm is rerun → another blood bank with excess blood (C) will cover the existing shortage

We got the desired output, that’s a wrap on the MVP!

Flying to India for Validation!

As I mentioned, the lack of perspective sitting in Canada was now becoming crucial as it was time to talk to our users (blood banks) and get validation on whether or not they would use our algorithm.

On top of that, my main priority was to get the required data to train the full algorithm and kickstart relationships for a pilot in the future.


I started in Pune by cold calling dozens of hospitals and standalone blood banks. I asked some questions about what the status quo is and if they would use our algorithm. The language barrier was a problem because I couldn’t explain all the technicals in Hindi, but massive s/o to my dad for helping translate.

One key insight that was unlocked was that all the blood banks were governmentally regulated to update their daily inventory on the State Blood Transfusion Council (SBTC) portal. This was exactly the portal that we needed to gain access to for the input data!

The man who answered the phone at the Sanjeevani Blood Bank in Pune explained that we needed permission from the SBTC directly. A quick phone call later, we had the Assistant Director’s number to book a meeting at their head office in Mumbai.

After semi-striking out with cold calling, I decided to message all of our previous meetings that were based in Pune. Warm introductions from friends and family > cold outreach, in the Indian market. This approach led to 5–6 valuable meetings.

While each of the meetings provided additional information and perspective, there were a few key insights that significantly changed our approach:

  1. Private blood banks have significant markup fees that prevent others from requesting large volumes of blood, this is one of the leading causes behind the imbalance of supply and demand.
    So what? We need a proper economic model to determine who will fund the purchases.
  2. Excessive regulations on collaboration between different blood banks → private, government and corporation blood banks can only transfer blood between their own ownership type, with a few exceptions.
    So what? We have to fork the algorithm to create individual networks for government, private and corporation blood banks.
  3. Limited need for transportation → hospital blood banks, both private and government, have round-the-clock staff with vehicles to pick up/deliver blood from/to nearby hospitals. Only standalone blood banks require infrastructure to move blood around.
    So what? Physical transportation isn’t the main root cause of the imbalance as we initially hypothesized, and it shouldn’t be half of our solution. Our attention should shift towards eliminating the other obstacles to eliminating the imbalance.


As I was getting ready to go for a swim in the chilled pool, our SBTC contact calls to move our meeting from the day after to just two hours away.

I customized our slide deck slightly including a walkthrough of the MVP and then we hopped in the rickshaw.

After the introductions and I finished walking the executives through our progress so far, they each provided their thoughts and feedback on what would need to be true for this to be implemented.

It was very helpful to have a single source of truth where I could validate my assumptions and data received from other sources.

As we were discussing how large the network of data needs to be, the Chief Operating Officer turns to me and says: “Build the algorithm for the city of Mumbai, and then come back to us.” He then agreed to provide the required data for all 56 blood banks in Mumbai!

COO (left) and Assistant Director (right) of the Maharastra State Blood Transfusion Council

Best case scenario right there. We validated the problem, validated our solution, sparked their faith in the project, provided more data than I could’ve imagined (initially planned to build the algorithm for only 3–4 hospitals), and set clear intentions for future collaboration.

Our target market is the SBTC because although the blood banks are the physical users, the SBTC oversees the entire network. This puts them in the perfect position to run the algorithm and ensure blood deliveries.

Next Steps

The immediate next steps are as follows, with the long-term goal of deploying a pilot as soon as possible.

  1. Build out the full algorithm:
    1. Machine learning for forecasting donations and unscheduled demand using multivariate time series forecasting.
    2. Incorporating the shelf life component.
  2. Build out a full simulation and web app from scratch for the city of Mumbai. A simulation is the most effective way to demonstrate the effectiveness of the algorithm in a real-world setting (can incorporate natural disasters, etc).
    The goal is to use the web app as a way for the SBTC and individual blood banks to gain trust in our project. This is because it allows them to manipulate the variables themselves.
  3. Develop a sustainable economic incentive structure to fund the program both for the pilot and long-term.

How you can help: Share this update with anyone who might be able to help or wants follow the project’s progress

Feel free to connect with me on LinkedIn if you enjoyed this newsletter, or email me at if you have any questions/want to discuss more! If you want to stay up to date on all of the cool things I am doing, make sure to subscribe!



Aahaan Maini

16-year-old ML dev currently building Circulate to tackle the blood shortage in India