Single-Activity Syncing

The issue is that the limit from Strava is too low for the number of people using CityStrides & how CityStrides operates (the purpose of the site being that it uses your full history of running/walking activities to see which streets you’ve progressed/completed).

  • There are a total of 12,643 Strava-connected accounts
  • The growth rate has been between 56-227 new Strava-connected accounts per day (2,461 new accounts connected since March 18)
  • Each new activity ‘costs’ 2 API calls
  • Each historic activity ‘costs’ 1 API call for each 100 activities for a user plus 1 API for each activity
  • Each login action ‘costs’ 1 API call
  • The daily limit from Strava is 30,000 API calls

We can then figure out what the usage looks like.

  • 12,643 people all create one activity per day * 2 API calls = 25,286 API calls used (4,714 left)
  • Taking an average of 100 new signups per day = 100 API calls used just for the login (4,614 left)
  • I don’t know how many activities each person has (could be anywhere from dozens to tens of thousands) … if it’s 500, then that’s 505 API calls (4,109 left)
  • There are 290k historic activities in the queue (and more that I haven’t yet added to the queue; take a scroll through Reply Here If You Have Missing Activities to get a sense of how many more there likely are) = 290,000 API calls (285,891 over the limit, just for the activities I know are missing)

I think I need 10x the current Strava API limit to handle the current load.

(I updated Reply Here If You Have Missing Activities to include these numbers for easier reference)

2 Likes