# Protected Columns

**URL:** <https://community.glideapps.com/t/protected-columns/17209>\
**Category:** General\
**Created:** [October 16, 2020, 9:21am UTC](https://community.glideapps.com/t/protected-columns/17209 "2020-10-16T09:21:37Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![JackVaughan](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jackvaughan/32/49023_2.png) [@JackVaughan](https://community.glideapps.com/u/JackVaughan)\
**Post date:** [October 16, 2020, 9:21am UTC](https://community.glideapps.com/t/protected-columns/17209/1 "2020-10-16T09:21:37Z")

</div>

🆕 If your app is on a paid plan you can now use protected columns. Protected columns allow you to add an extra layer of security to your data. How does it work? Mark a column as protected and Glide will hide it, making it impossible to be loaded inside your app or the Data Editor. 🔐

Learn more ➡ [Glide Docs](https://gl.ink/pc)

 ![ScreenFlow-min](https://us1.discourse-cdn.com/flex002/uploads/glideapps/original/2X/6/6c2e33f23d673949ef29a6298f47b892b584c34a.gif)

---

<div class="post-metadata">

**Author:** ![Manu.n](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/manu.n/32/11679_2.png) [@Manu.n](https://community.glideapps.com/u/Manu.n)\
**Post date:** [October 16, 2020, 9:37am UTC](https://community.glideapps.com/t/protected-columns/17209/2 "2020-10-16T09:37:46Z")

</div>

Hello,  
Great  
How does it work: Pro Public & Pro Private or Pro Private only?

---

<div class="post-metadata">

**Author:** ![Yuval](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/yuval/32/4199_2.png) [@Yuval](https://community.glideapps.com/u/Yuval)\
**Post date:** [October 16, 2020, 9:38am UTC](https://community.glideapps.com/t/protected-columns/17209/3 "2020-10-16T09:38:55Z")

</div>

Super.  
Can protected columns be used for logic, relations, etc.? Or they simply are hidden from glide entirely?

---

<div class="post-metadata">

**Author:** ![JackVaughan](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jackvaughan/32/49023_2.png) [@JackVaughan](https://community.glideapps.com/u/JackVaughan)\
**Post date:** [October 16, 2020, 9:40am UTC](https://community.glideapps.com/t/protected-columns/17209/4 "2020-10-16T09:40:07Z")

</div>

I have updated the description as it wasn’t clear - this feature is available in all paid plans.

---

<div class="post-metadata">

**Author:** ![JackVaughan](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/jackvaughan/32/49023_2.png) [@JackVaughan](https://community.glideapps.com/u/JackVaughan)\
**Post date:** [October 16, 2020, 9:41am UTC](https://community.glideapps.com/t/protected-columns/17209/5 "2020-10-16T09:41:02Z")

</div>

They are completely hidden from Glide. The data cannot be used at all.

---

<div class="post-metadata">

**Author:** ![V88](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/v88/32/90054_2.png) [@V88](https://community.glideapps.com/u/V88)\
**Post date:** [October 16, 2020, 10:06am UTC](https://community.glideapps.com/t/protected-columns/17209/6 "2020-10-16T10:06:34Z")

</div>

So Glide can’t read these columns? Then can you explain the use case please?

---

<div class="post-metadata">

**Author:** ![Robert\_Petitto](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/robert_petitto/32/25193_2.png) [@Robert\_Petitto](https://community.glideapps.com/u/Robert_Petitto)\
**Post date:** [October 16, 2020, 10:24am UTC](https://community.glideapps.com/t/protected-columns/17209/7 "2020-10-16T10:24:03Z")

</div>

Let’s say you want to onboard users, asking for sensitive data, but you don’t plan on using the data in your app (SSN, Address, etc). This info can still be collected in the spreadsheet without using it in the app.

---

<div class="post-metadata">

**Author:** ![V88](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/v88/32/90054_2.png) [@V88](https://community.glideapps.com/u/V88)\
**Post date:** [October 16, 2020, 10:26am UTC](https://community.glideapps.com/t/protected-columns/17209/8 "2020-10-16T10:26:04Z")

</div>

I guess so, perhaps if your app was using a customer’s sheet to collect data?

---

<div class="post-metadata">

**Author:** ![Robert\_Petitto](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/robert_petitto/32/25193_2.png) [@Robert\_Petitto](https://community.glideapps.com/u/Robert_Petitto)\
**Post date:** [October 16, 2020, 10:27am UTC](https://community.glideapps.com/t/protected-columns/17209/9 "2020-10-16T10:27:06Z")

</div>

Correct.

---

<div class="post-metadata">

**Author:** ![Robert\_Petitto](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/robert_petitto/32/25193_2.png) [@Robert\_Petitto](https://community.glideapps.com/u/Robert_Petitto)\
**Post date:** [October 16, 2020, 10:28am UTC](https://community.glideapps.com/t/protected-columns/17209/10 "2020-10-16T10:28:02Z")

</div>

Or, if you’re using a massive spreadsheet filled with lots of unneeded data for the app, make all those protected and Glide won’t download the data theoretically making the app lighter?

---

<div class="post-metadata">

**Author:** ![V88](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/v88/32/90054_2.png) [@V88](https://community.glideapps.com/u/V88)\
**Post date:** [October 16, 2020, 10:43am UTC](https://community.glideapps.com/t/protected-columns/17209/11 "2020-10-16T10:43:07Z")

</div>

Yup. I see that. Just watched @JackVaughan video too. Quite useful. Let’s see how this all pans out but it seems a very positive step in the right direction.

---

<div class="post-metadata">

**Author:** ![Eric\_Penn](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/eric_penn/32/73888_2.png) [@Eric\_Penn](https://community.glideapps.com/u/Eric_Penn)\
**Post date:** [October 17, 2020, 2:47pm UTC](https://community.glideapps.com/t/protected-columns/17209/12 "2020-10-17T14:47:56Z")

</div>

Does making a “protected” column in the GDE remove it from your row count / speed up refresh times?

---

<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:** [October 17, 2020, 3:05pm UTC](https://community.glideapps.com/t/protected-columns/17209/13 "2020-10-17T15:05:43Z")

</div>

I don’t think that’s the case regarding the row count, it’s a column not a row. Other columns contributing to your data will still eat a row.

---

<div class="post-metadata">

**Author:** ![Makis\_Theonas](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/makis_theonas/32/713_2.png) [@Makis\_Theonas](https://community.glideapps.com/u/Makis_Theonas)\
**Post date:** [October 29, 2020, 7:39pm UTC](https://community.glideapps.com/t/protected-columns/17209/14 "2020-10-29T19:39:30Z")

</div>

When this dialogue “Mark column as protected” pops-up , there is no way escaping it.  
“Esc” does not do it nor clicking outside the modal.

---

<div class="post-metadata">

**Author:** ![david](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/david/32/62831_2.png) [@david](https://community.glideapps.com/u/david)\
**Post date:** [October 29, 2020, 7:58pm UTC](https://community.glideapps.com/t/protected-columns/17209/15 "2020-10-29T19:58:01Z")

</div>

To clarify, Glide can read (and write) _everything_ in your Google Sheet, even columns you mark as protected. When you mark a column as protected, Glide prevents _apps_ from reading that column.

Glide is the thing that protects Protected Columns, so in other words, it controls them. Google Sheets would have to offer a Protected Columns feature itself, if your goal was to prevent Glide from reading the data entirely.

We will make this clearer in the documentation and video.

---

<div class="post-metadata">

**Author:** ![Rasha](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/rasha/32/4585_2.png) [@Rasha](https://community.glideapps.com/u/Rasha)\
**Post date:** [November 3, 2020, 3:12am UTC](https://community.glideapps.com/t/protected-columns/17209/16 "2020-11-03T03:12:31Z")

</div>

So just to be clear, this is purely a security feature and has no incremental performance benefit, correct? I.e., not intended to “protect” computed columns to speed up an app.

---

<div class="post-metadata">

**Author:** ![BlakeWS](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/blakews/32/24377_2.png) [@BlakeWS](https://community.glideapps.com/u/BlakeWS)\
**Post date:** [April 28, 2021, 5:49pm UTC](https://community.glideapps.com/t/protected-columns/17209/17 "2021-04-28T17:49:41Z")

</div>

If the app is using Glide Tables only, is there a way to prevent local instances of a public app from downloading certain tables that aren’t used for the interface? In my case I made a custom form with user specific columns and am writing a name and email address to a separate Glide table. Now my concern is that this table gets downloaded to everyone’s device when opening the app.

I’m thinking that through Zapier I can write these details to a Google sheet that isn’t used by the app, instead of the Glide table, but I’d much rather just mark the Glide table as “protected” to prevent the data download. Of course, I don’t want the cells obscured though…

---

<div class="post-metadata">

**Author:** ![kyleheney](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/kyleheney/32/41173_2.png) [@kyleheney](https://community.glideapps.com/u/kyleheney)\
**Post date:** [April 28, 2021, 6:04pm UTC](https://community.glideapps.com/t/protected-columns/17209/18 "2021-04-28T18:04:48Z")

</div>

Could you use Row Owners for this purpose? This way, only the rows with the individuals’ email address would be downloaded to their device. You could also add another column that is a Row Owner and add in an administrator’s email address so that they can maintain access to all rows of data.

---

<div class="post-metadata">

**Author:** ![BlakeWS](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/blakews/32/24377_2.png) [@BlakeWS](https://community.glideapps.com/u/BlakeWS)\
**Post date:** [April 28, 2021, 6:15pm UTC](https://community.glideapps.com/t/protected-columns/17209/19 "2021-04-28T18:15:30Z")

</div>

I tried this just now - I made an “Admin” column in the table I want to protect, put my email address in it, and made it Row Owner, but suddenly the data disappeared from the cells, except for the RowID’s. This seems like it’s okay, except when I change the “viewing as” to my email the data doesn’t reappear. I need to test this again…

---

<div class="post-metadata">

**Author:** ![kyleheney](https://sea2.discourse-cdn.com/flex002/user_avatar/community.glideapps.com/kyleheney/32/41173_2.png) [@kyleheney](https://community.glideapps.com/u/kyleheney)\
**Post date:** [April 28, 2021, 6:16pm UTC](https://community.glideapps.com/t/protected-columns/17209/20 "2021-04-28T18:16:30Z")

</div>

Try refreshing your browser window. Adding Row Owners can require a full browser refresh (in my experience at least!).

[Next page](https://community.glideapps.com/t/protected-columns/17209.md?page=2)
