# Activity position in waiting to import list

**URL:** https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903
**Category:** Ideas
**Created:** [April 11, 2020, 4:01pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903 "2020-04-11T16:01:36Z")
**Posts on this page:** 17
**Page:** 1

<div class="post-metadata">

### Author: ![howling0\_strava](https://community.citystrides.com/letter_avatar_proxy/v4/letter/h/e95f7d/32.png) [@howling0\_strava](https://community.citystrides.com/u/howling0_strava)
#### Post date: [April 11, 2020, 4:01pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/1 "2020-04-11T16:01:36Z")

</div>

I used Citystrides in the past, and then stopped for a while, recently been getting back into it. Over the last couple of months, last night I became a paid for supporter as I figured it was about time I supported this project, use the node hunter facility and also to get priority syncing.  
I noted the number of activities waiting appears to be in freefall, its risen approx 10,000 in the last 6hours or so.  
My latest activity from 6 hours ago is logged as scheduled for import. However I have no visibility of how long it will take to be imported.

It’s obvious you have a problem in terms of sheer number of activities coming in vs those you pull from Strava. However it would be great if there was some indication of where current activities are in the list of those to be imported.  
I understand that for non supporters it may appear that their activities are not progressing if paid supporters activities are continually jumping ahead. So maybe this is only displayed to supporters.  
If there was a estimation of time linked to that position in the list then that would be great. But I’d even be happy to work it out for myself. As if you can import 15,000 a day and I’m 10,000 in the list its going to take approx 16hrs…  
Less any of those used for new users imports etc.

---

<div class="post-metadata">

### Author: ![JamesChevalier](https://community.citystrides.com/user_avatar/community.citystrides.com/jameschevalier/32/2_2.png) [@JamesChevalier](https://community.citystrides.com/u/JamesChevalier)
#### Post date: [April 11, 2020, 4:17pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/2 "2020-04-11T16:17:23Z")

</div>

Yeah, I need to improve/add to [How Syncing Works](https://community.citystrides.com/t/how-syncing-works/19443)

There is no “place in the queue” or a _static_ order of things. I have X number of activities that all want to be synchronized, and any/all subscriber activities have priority before any non-subscriber activities are synchronized. When the Strava API limit is reached, any lingering activities to be synced are scheduled out after the next reset (be it a 15min or 24hr limit reach).

The fact that these jobs are attempted, then potentially rescheduled (limit reached) means that there’s no visibility into how long a job has been in this whole system - each attempt/retry/requeue/reschedule is a new instance.

One change that I intend to add is to have historic/full-account Strava syncing go into a lower priority queue so that new activities can make their way into CityStrides and the history-filling won’t block that. This means that new users have a degraded experience, but it’s basically my only option at this point.

---

<div class="post-metadata">

### Author: ![ericjrw](https://community.citystrides.com/user_avatar/community.citystrides.com/ericjrw/32/1065_2.png) [@ericjrw](https://community.citystrides.com/u/ericjrw)
#### Post date: [April 11, 2020, 4:34pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/3 "2020-04-11T16:34:09Z")

</div>

It also seems there is a bit of a backlog on Strava syncs.

And, this may have been mentioned elsewhere already, and it has, I will find it…

But the Strava activity number(s) are no longer on the status page.

 ![Activity gone (this time 2)](https://d25dflut6m8e53.cloudfront.net/original/2X/1/15dc8d7874a8a571501270cedf95e747a41a3aef.png)

Thank you James!

Eric

---

<div class="post-metadata">

### Author: ![howling0\_strava](https://community.citystrides.com/letter_avatar_proxy/v4/letter/h/e95f7d/32.png) [@howling0\_strava](https://community.citystrides.com/u/howling0_strava)
#### Post date: [April 11, 2020, 5:25pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/4 "2020-04-11T17:25:58Z")

</div>

Ahh good to know. Am I right in thinking then  
If there are 2,000 supporter activities waiting to import.  
A random 300ish will be imported in 15mins, and the rest will be put on hold, 15mins later, another random 300will be imported from the 1,700 (plus any new activities) (not sure if these are actually 150 every 15mins at 2api calls per activity multiplied out to 30,000 a day)

I assume the 200,000 activities are a mixture of supports, non, regular activities and new user imports?

If so is it possible to see how many other activities are in the same group as regular supporters?  
E.g. You have 1 activity to be imported along with 5,000 equivalent supporter activities out of the 200,000 total.

I can see this is a difficult problem to solve, I am just keen for as much information as possible to give an indication of how long it might take for my activity to be seen.

Do you have any plan to implement a system whereby the activities of supports are imported in chronological order as opposed to the current system?

As the other commenter to this thread, I also noticed the actual activity numbers waiting are no longer listed on the page.

---

<div class="post-metadata">

### Author: ![JamesChevalier](https://community.citystrides.com/user_avatar/community.citystrides.com/jameschevalier/32/2_2.png) [@JamesChevalier](https://community.citystrides.com/u/JamesChevalier)
#### Post date: [April 11, 2020, 6:02pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/5 "2020-04-11T18:02:29Z")

</div>

> A random 300ish will be imported in 15mins, and the rest will be put on hold,

Yeah, basically, but it gets a little tricky/nuanced - there may be _some_ semblance of order to things behind totally random. There’s just not a _strict_ order, because the job system is multi-threaded. If it can bring in ~50 activities at a time, then there will be some vague representation of order on the scale of every 50-100 activities … put another way, I wouldn’t expect the _first_ enqueued activity to suddenly somehow swap order with the _last_ enqueued activity.

> not sure if these are actually 150 every 15mins at 2api calls per activity multiplied out to 30,000 a day

_new_ activities - those alerted by webhooks ‘cost’ 2 API calls each. The historic activities ‘cost’ 1 API call per 100 activities for a user and then 1 API call for each activity. So a batch of 100 activities for a user would ‘cost’ 101 API calls.

> I assume the 200,000 activities are a mixture of supports, non, regular activities and new user imports?

Yeah, that’s a count of everyone.

> If so is it possible to see how many other activities are in the same group as regular supporters?

These counts are _expensive_ and I’m noticing performance issues as the queue sizes increase. That’s not to say it can’t be done - it’s just not heading down that path as things are written right now.

> Do you have any plan to implement a system whereby the activities of supports are imported in chronological order as opposed to the current system?

No. The current system is _wildly_ efficient - I push through 20-40 million jobs per day. I’m not expecting any different system to outperform this. This problem is not with my background job system, this problem resides solely on Strava having a _very_ low API limit for my 12,379 _current_ Strava-connected users with a growth rate of 55-227 new Strava connections per day over the last couple weeks.  
Further, this system is “chronological enough” for me. The only place that this breaks down is when API limits are _grossly_ exceeded (the past two weeks).

> the actual activity numbers waiting are no longer listed on the page.

I can no longer display this information.  
I’ve revamped the historic syncing from a single job that would attempt to sync 100 activities for a user in one go (which basically limited that syncing to 3 people each 15min period) … to one where the metadata for all the activities for the user are collected from Strava & enqueued in my job system. This increases the activity queue load to hundreds of thousands of activities, but makes it much more likely that all people will slowly be synchronized together (as opposed to one person at a time).  
I’ve _also_ de-prioritized this historical syncing so that subscriber activities first priority, then any new activity is prioritized, then the historical sync is worked on if there are more API calls left.

* * *

Strava has been completely unresponsive to my requests for an API rate limit increase. I’ve explained to them that I’m currently _very close_ to the ceiling (12379 \* 2 API calls per activity = 24758 API calls per day; leaving 5242 API calls for historical syncing) and that I’m roughly 60 days away from reaching that and being fully saturated.

Perhaps it’s time for those of you affected by this to submit support requests: [https://support.strava.com/](https://support.strava.com/) (“Submit a request” in the top right), or publicly mentioning this to them on Twitter: [https://twitter.com/stravasupport](https://twitter.com/stravasupport) (Start your message with something like “Hi” and _then_ include the at-mention, so that it’s a public tweet and not a reply that’s only shown to them). 🤷‍♂️ I don’t know what else to do at this point.

---

<div class="post-metadata">

### Author: ![howling0\_strava](https://community.citystrides.com/letter_avatar_proxy/v4/letter/h/e95f7d/32.png) [@howling0\_strava](https://community.citystrides.com/u/howling0_strava)
#### Post date: [April 11, 2020, 7:29pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/6 "2020-04-11T19:29:41Z")

</div>

Thanks for taking the time to explain all of this James.

I see why your hands really are tied with all of this.

I will raise a ticket with strava to try and help.

I think I must have been lucky the last week or so as my non premium member activities have been syncing within 18 to 36 hours. But looking at the totals as it stands currently 210,000 is 7 full days with no more activities and new activities/ new year syncs are coming in faster than it can import them as that total is rising.

I was wondering if it was worth trying a service such as tapiriik and moving new activities to mapmyrun and importing them to citystrides that way, but they would still be in strava and would then mean you would need to import both which doesn’t help you, as I assume the system wont disregard a strava activity if a mapmyrun activity exists with the same name and time and date?  
I wouldn’t want to disconnect my strava connection as I don’t want my historical data being erased…  
Thanks again,  
I will look at strava now.

---

<div class="post-metadata">

### Author: ![f05f244860901569362a](https://community.citystrides.com/letter_avatar_proxy/v4/letter/f/91b2a8/32.png) [@f05f244860901569362a](https://community.citystrides.com/u/f05f244860901569362a)
#### Post date: [April 11, 2020, 8:59pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/7 "2020-04-11T20:59:36Z")

</div>

I know I’ve asked this before but I don’t think I actually saw an answer. Why not go directly to Garmin and get the data from them?

---

<div class="post-metadata">

### Author: ![f05f244860901569362a](https://community.citystrides.com/letter_avatar_proxy/v4/letter/f/91b2a8/32.png) [@f05f244860901569362a](https://community.citystrides.com/u/f05f244860901569362a)
#### Post date: [April 11, 2020, 10:24pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/8 "2020-04-11T22:24:16Z")

</div>

I’m just some random average idiot on the internet, but I posted over 3 weeks ago about this growing problem basically asking what your plan was to fix it. In those 3 weeks the problem has grown exponentially (not the only thing to do so) and I still honestly don’t see a long term plan here. Right now you have paying supporters that are not getting adequate upload times and forget about it if you’re a non-subscriber. I feel like we were at a shit or get off the pot moment a couple weeks ago. Not to poke at a sensitive subject, but this website must be generating decent cash flow and it really needs some serious attention. At this point it’s possible that you missed capturing all the new covid mappers but some quick decisive changes could still keep them around. Strava is probably a dead end because they have no interest in going out of their way to help you but all of your focus has been on them. Garmin costs money and has an upfront labor cost to you but clearly seems like the long term strategy. Obviously switching over to Garmin will be much tougher now that there are 2000 more members than there were 3 weeks ago, but something needs to change here quickly if you want the site to be successful.

---

<div class="post-metadata">

### Author: ![ericjrw](https://community.citystrides.com/user_avatar/community.citystrides.com/ericjrw/32/1065_2.png) [@ericjrw](https://community.citystrides.com/u/ericjrw)
#### Post date: [April 12, 2020, 5:52am UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/9 "2020-04-12T05:52:19Z")

</div>

> [@f05f244860901569362a](#):
>
> I know I’ve asked this before but I don’t think I actually saw an answer. Why not go directly to Garmin and get the data from them?

The last thing I saw on this is that Garmin charges a one-time fee of $5,000 for access to their API…

However, I read somewhere else, that Garmin **dropped the fee**. This page very well may bare that out: [https://developer.garmin.com/health-api/overview/](https://developer.garmin.com/health-api/overview/) (details of what’s covered in the API are at that link too)

### GET THE API

Access to our Health API is **free** to approved developers.

I guess the trick is becoming an “approved” developer. 😉

_But the one thing I am most curious about is_, would switching to **MapMyFitness** or **Runkeeper** help? I find CityStrides more enjoyable than Strava, though I would miss the metrics. But maybe they are there in the Garmin app? I was using the Strava app before I had my Garmin, so kept rolling (and running) with Strava. If one is “better” than the other, which one? I have no experience with either.

[edit] It was [hjkiddk](https://community.citystrides.com/u/hjkiddk) that originally posted about the [API is free](https://community.citystrides.com/t/interested-in-direct-garmin-integration/14193/4), in the “[poll thread](https://community.citystrides.com/t/interested-in-direct-garmin-integration/14193/)” It was bugging me that I could not remember where I saw that.

---

<div class="post-metadata">

### Author: ![f05f244860901569362a](https://community.citystrides.com/letter_avatar_proxy/v4/letter/f/91b2a8/32.png) [@f05f244860901569362a](https://community.citystrides.com/u/f05f244860901569362a)
#### Post date: [April 12, 2020, 1:56pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/10 "2020-04-12T13:56:39Z")

</div>

You gotta spend money to make money. Spending the 5k a month ago when trouble was on the horizon would probably have paid off by now and maybe there would be more than the 2000 new users then have already joined in that time. It’s hard to keep paying subscribers when the site isn’t even working.

---

<div class="post-metadata">

### Author: ![rickyrichard](https://community.citystrides.com/letter_avatar_proxy/v4/letter/r/e47774/32.png) [@rickyrichard](https://community.citystrides.com/u/rickyrichard)
#### Post date: [April 12, 2020, 2:17pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/11 "2020-04-12T14:17:03Z")

</div>

Totally agree…it is a now world and to have to wait a day for data to be loaded is something the market won’t tolerate. The moment someone else comes along and figures out a way to have their data get imported immediately, people will flock there. For anyone who is running everysinglestreet, it’s difficult to go out the next day and know what route you want to run when you can’t look an your own up to date map.

---

<div class="post-metadata">

### Author: ![jack.hickey](https://community.citystrides.com/letter_avatar_proxy/v4/letter/j/8edcca/32.png) [@jack.hickey](https://community.citystrides.com/u/jack.hickey)
#### Post date: [April 12, 2020, 9:16pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/12 "2020-04-12T21:16:32Z")

</div>

I agree. I just joined a week ago and was really excited to find a website that would create this type of map. I primarily use Garmin, and signed up for Strava simply to be able to sync with City Strides. Already frustrated though with the delay in syncing. I wish I could simply upload the activity manually myself, it would be way faster than waiting for this damn Strava sync.

I’m sure many others are frustrated too and second-guessing whether or not City Strides is worth using with these massive delays.

---

<div class="post-metadata">

### Author: ![beatlekevin87](https://community.citystrides.com/letter_avatar_proxy/v4/letter/b/94ad74/32.png) [@beatlekevin87](https://community.citystrides.com/u/beatlekevin87)
#### Post date: [April 12, 2020, 9:21pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/13 "2020-04-12T21:21:21Z")

</div>

I’ve been mostly ok with waiting longer than usual lately as I know there are so many new members and activities, however with that being said it used to be worst case scenario I’d go to bed and wake up with my activity having counted and I could go after new streets that day just fine. Now it seems that processing times can be over 24 hours which can be frustrating as I’ll have done another run and the previous run still isn’t there. Also, I like to look at my map as it slowly gets more filled in. If 3 or more activities get filled in a day or more later it takes some of the fun away as you don’t get to see your progress as you go.

---

<div class="post-metadata">

### Author: ![Gabriel](https://community.citystrides.com/letter_avatar_proxy/v4/letter/g/9de0a6/32.png) [@Gabriel](https://community.citystrides.com/u/Gabriel)
#### Post date: [April 17, 2020, 12:53am UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/14 "2020-04-17T00:53:26Z")

</div>

I agree with this idea - I understand why it doesn’t work in the current framework of Strava priority syncing - but I’m pretty frustrated. I was excited to find this site. I poked around, connected to Strava and then waited and waited. Then I found the forum, thought becoming a supporter would help so I ponied up and contributed some cash - still nothing. I tried to sign up for runkeeper, but their signup process is broken.

I don’t have any idea when this site will be useful for me, but if it’s more than a few days/week, I’ll either delete my account or (more likely) forget about it for a long time, only to remember it as the service that I couldn’t use. I don’t mean to be harsh, I hope it didn’t come across that way.

---

<div class="post-metadata">

### Author: ![hjkiddk](https://community.citystrides.com/user_avatar/community.citystrides.com/hjkiddk/32/2072_2.png) [@hjkiddk](https://community.citystrides.com/u/hjkiddk)
#### Post date: [April 17, 2020, 3:51am UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/15 "2020-04-17T03:51:41Z")

</div>

I made a Runkeeper account a few days ago, just to be ready if Strava is not gonna help us.  
They support bulkupload of GPX so it only took 10 uploads to make a full sync.

Have you tried signing up again?

---

<div class="post-metadata">

### Author: ![Gabriel](https://community.citystrides.com/letter_avatar_proxy/v4/letter/g/9de0a6/32.png) [@Gabriel](https://community.citystrides.com/u/Gabriel)
#### Post date: [April 17, 2020, 4:28am UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/16 "2020-04-17T04:28:20Z")

</div>

Just tried with a different email and it worked…strange. Thanks for the encouragement!

---

<div class="post-metadata">

### Author: ![JamesChevalier](https://community.citystrides.com/user_avatar/community.citystrides.com/jameschevalier/32/2_2.png) [@JamesChevalier](https://community.citystrides.com/u/JamesChevalier)
#### Post date: [April 17, 2020, 1:46pm UTC](https://community.citystrides.com/t/activity-position-in-waiting-to-import-list/19903/17 "2020-04-17T13:46:55Z")

</div>

There’s also [https://tapiriik.com/](https://tapiriik.com/) for anyone looking to bulk-move data around.
