Where you allow users to "delete" things, do you archive instead of delete?

I’ve been archiving because I understand there are a couple of reasons it’s nice to keep the data, but it does make the app more complicated as well as slower, mainly because every repeating group needs a “filter:Status <> Archived”.

There are rare cases when a straight-up delete seems okay, but mostly not.

I suppose the answer is probably “yep, that’s just the way it is” but I just wonder if anyone has any perspectives I may not have considered. Thanks!

I do both. If there is no reason to recover, I delete. If there is, I archive. Just depends on the use case.

But for your archive, can you remove that filter and move it to a constraint on the search? That way, the original search is not pulling all the archived records from the server.


A few thoughts:

  • If you’re considering deleting a thing that has it’s own URLs in your app, it’s nice to have a list of the deleted items since there may be external links (and search indexes) that point to those pages, and you probably want to do something with them other than just delete them.
  • If you’re using analytics, it’s often helpful to keep a history of what’s deleted (or simply archive) as well so you can use meta data for the thing to understand traffic patterns better.
  • There’s a material UX component to deleted things – both for the user deleting them, but also for other people who may interact public things such as other’s yelp reviews or quora answers. The same is true for content that’s built on top of other user’s things, such as other’s comments on a user’s (deleted) review, or other’s upvotes and counts of upvotes on a (deleted) answer, etc. It’d be odd, for example, if you showed the total number of upvotes as 5 and then a day later users see it as 4.

One additional option that can make sense at times, instead of either deleting or archiving – you could find middle ground such as writing over or deleting the sensitive content in the original thing (e.g., a user’s name, email address, location, etc.) but keeping the thing itself in-tact, especially if other people’s things interact with it.

Just some off the cuff thoughts. Curious to hear other people’s take.


Something I’ve learned as I’ve gotten into having more data is that Bubble is incredibly slow at displaying repeating groups that have a lot of data plus a filter.

So when I have data that will be displayed in a repeating group and will need to be filtered if I archive some of the records, I’ve started to ask myself, “do I really really really need to archive this data?” If the answer is no, don’t do it. It’s not worth the terrible performance.

Or if you do need it, another option I’ve considered (but haven’t tried) would be to have a whole other data type for the archived records, i.e. you create a copy of the whole record in the other data type and then delete the original. That way, you have a backup, but don’t have to use a filter.

1 Like

exactly what i’m considering now lol