# Upload data in Glide app in the form of a CSV file or Excel by the user

**URL:** <https://community.glideapps.com/t/upload-data-in-glide-app-in-the-form-of-a-csv-file-or-excel-by-the-user/34160>\
**Category:** Ask for Help\
**Created:** [November 7, 2021, 11:48am UTC](https://community.glideapps.com/t/upload-data-in-glide-app-in-the-form-of-a-csv-file-or-excel-by-the-user/34160 "2021-11-07T11:48:40Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![Heena\_Mirchandani](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/heena_mirchandani/32/33315_2.png) [@Heena\_Mirchandani](https://community.glideapps.com/u/Heena_Mirchandani)\
**Post date:** [November 7, 2021, 11:48am UTC](https://community.glideapps.com/t/upload-data-in-glide-app-in-the-form-of-a-csv-file-or-excel-by-the-user/34160/1 "2021-11-07T11:48:40Z")

</div>

Hello all. I would like to know if there is any solution to this- I want the user to upload their data on the app (it can be a CSV file or Excel, or even GSheet) and the data gets stored and updated as they want on the app.

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [November 7, 2021, 12:06pm UTC](https://community.glideapps.com/t/upload-data-in-glide-app-in-the-form-of-a-csv-file-or-excel-by-the-user/34160/2 "2021-11-07T12:06:27Z")

</div>

You would have to let them upload the file, then use a webhook/Zap action to pass it to Integromat/Zapier and process the CSV file there. Write all the rows to your Google Sheets.

---

<div class="post-metadata">

**Author:** ![Heena\_Mirchandani](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/heena_mirchandani/32/33315_2.png) [@Heena\_Mirchandani](https://community.glideapps.com/u/Heena_Mirchandani)\
**Post date:** [November 18, 2021, 5:15pm UTC](https://community.glideapps.com/t/upload-data-in-glide-app-in-the-form-of-a-csv-file-or-excel-by-the-user/34160/3 "2021-11-18T17:15:20Z")

</div>

Thanks for replying! 🙂 So basically you are saying to take the data, edit and update it in the GSheets and then it will be updated in the app? And make a Zap to trigger an update in the GSheet?

---

<div class="post-metadata">

**Author:** ![ThinhDinh](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/thinhdinh/32/49_2.png) [@ThinhDinh](https://community.glideapps.com/u/ThinhDinh)\
**Post date:** [November 18, 2021, 11:36pm UTC](https://community.glideapps.com/t/upload-data-in-glide-app-in-the-form-of-a-csv-file-or-excel-by-the-user/34160/4 "2021-11-18T23:36:49Z")

</div>

I mean you let the users upload their CSV in the app, then push the URL to Integromat/Zapier and process the CSV there. You don’t have to do any manual editing/updating, just to be clear.

---

<div class="post-metadata">

**Author:** ![Andreas\_Ramelsberger](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/andreas_ramelsberger/32/52780_2.png) [@Andreas\_Ramelsberger](https://community.glideapps.com/u/Andreas_Ramelsberger)\
**Post date:** [February 2, 2024, 8:14am UTC](https://community.glideapps.com/t/upload-data-in-glide-app-in-the-form-of-a-csv-file-or-excel-by-the-user/34160/5 "2024-02-02T08:14:49Z")

</div>

Hey,  
is there a new way to solve this topic? Or is the Zapier way to do it still the best workflow?

I also want to upload a csv file as user and then all rows have to be added to a specific table.

Thanks  
Andi

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [February 2, 2024, 8:20am UTC](https://community.glideapps.com/t/upload-data-in-glide-app-in-the-form-of-a-csv-file-or-excel-by-the-user/34160/6 "2024-02-02T08:20:00Z")

</div>

> [@Andreas\_Ramelsberger](#):
>
> I also want to upload a csv file as user and then all rows have to be added to a specific table.

This is possible, but requires some fairly advanced techniques involving the use of JavaScript and the Glide API.

---

<div class="post-metadata">

**Author:** ![Andreas\_Ramelsberger](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/andreas_ramelsberger/32/52780_2.png) [@Andreas\_Ramelsberger](https://community.glideapps.com/u/Andreas_Ramelsberger)\
**Post date:** [February 2, 2024, 8:31am UTC](https://community.glideapps.com/t/upload-data-in-glide-app-in-the-form-of-a-csv-file-or-excel-by-the-user/34160/7 "2024-02-02T08:31:35Z")

</div>

ok. What is the best workflow in your opinion?  
In general I have heard about both - so also java script.

---

<div class="post-metadata">

**Author:** ![Darren\_Murphy](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/darren_murphy/32/47326_2.png) [@Darren\_Murphy](https://community.glideapps.com/u/Darren_Murphy)\
**Post date:** [February 2, 2024, 8:39am UTC](https://community.glideapps.com/t/upload-data-in-glide-app-in-the-form-of-a-csv-file-or-excel-by-the-user/34160/8 "2024-02-02T08:39:55Z")

</div>

Best workflow? Do you mean to get the job done?

I’ve never done it in a live App, but I did create a demo App last year as a proof of concept. The approach was as follows:

- Custom Form to upload a CSV file to a User Specific column
- Multi-row helper table to process the file. A minimum of one row is required for every 500 lines of CSV.
- JavaScript column to download the file, process it and generate bundles of `add-row-to-tables` mutations
- Call API or webhook to send the payload to the Glide API, either directly or via Make.

Below is a short video I made that demonstrates. This was actually an improved version of the original concept that is more reliable and efficient:

---

<div class="post-metadata">

**Author:** ![Andreas\_Ramelsberger](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/andreas_ramelsberger/32/52780_2.png) [@Andreas\_Ramelsberger](https://community.glideapps.com/u/Andreas_Ramelsberger)\
**Post date:** [February 2, 2024, 8:52am UTC](https://community.glideapps.com/t/upload-data-in-glide-app-in-the-form-of-a-csv-file-or-excel-by-the-user/34160/9 "2024-02-02T08:52:31Z")

</div>

thank you
