Slow uploads using TransloaditKit


I’m building a Mac app to upload files using Transloadit. I’ve based it off the Transloaditkit example code.
However the uploads are super slow.

Screenshot 2024-02-21 at 19.45.12

Using the TransloaditKitExample, everything worked fine (and fast). I thought maybe it was because the example was creating the assembly steps, and not using a template. So I created a template and used that with the Example app, and that worked fine too.

The only difference I can see is I am uploading audiofiles and not images (like in the example app). I just can’t see why this would make a differance.

Hello Julian, something seems to be off here. An upload should not be progressed to 58.300%. Could you share some example Assembly IDs with us, so we can further investigate? If you don’t want to post them publicly, feel free to e-mail us at

Use uploadcare , very fast

Hi Marius, thanks for your reply, sorry for my delay. I’ll hopefully upload an example repo tomorrow and email the assembly ids. Thanks :slight_smile:

1 Like

Finally I had some time! Sorry about that, I’ve made a demo repo of a MacOS app using TransloaditKit

You’ll need to specify a TemplateID, and the Transloadit credentials. I’ve also emailed support with a follow up email with more info. Let me know if you need anything else. :slight_smile:

Thank you, we will be looking into this :slight_smile:

1 Like

Hello Julian,

I want to give you (and anyone else interested) a brief update. We are able to reproduce the issue with your example repository.

Our first idea is that your project and the example from TransloaditKit use different file pickers. Your project seems to use a file picker, which returns an app-specific file handle. When you provide this handle to TransloaditKit, it is passed down to TUSKit, which is a library we use for resumable file uploads. This library tries to re-save the file, which is not allowed due to sandbox restrictions, causing the upload to fail and the didError handler to be called. Disabling the sandbox seems to help, but is not the ideal solution, of course.

We will continue working on this to improve the situation.

1 Like