# What are appropriate uses of PluginStore?

**URL:** <https://meta.discourse.org/t/what-are-appropriate-uses-of-pluginstore/154346>\
**Category:** Development\
**Created:** [June 9, 2020, 9:18pm UTC](https://meta.discourse.org/t/what-are-appropriate-uses-of-pluginstore/154346 "2020-06-09T21:18:23Z")\
**Posts on this page:** 1\
**Showing post:** 8

<div class="post-metadata">

**Author:** ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)\
**Post date:** [July 2, 2020, 7:35am UTC](https://meta.discourse.org/t/what-are-appropriate-uses-of-pluginstore/154346/8 "2020-07-02T07:35:50Z")

</div>

I can see us removing both plugin store and custom fields long term and replacing/amending with a far more restricted and controlled system, they cause more trouble than they do help things.

The one place we use custom fields and really need them these days it to flag to serializers that “special” information exists on a post, or in exceptional cases when you are decorating 50% of the posts in the system you would also put data there.

custom fields are too flexible and have tons of concurrency issues.

The best way of going about adding rich data is by having a plugin create the tables it needs and owns, this should be the first thing you do, if you get stuck cause N+1 and other issues then reach to custom fields to help avoiding them.

---

_[View the full topic](https://meta.discourse.org/t/what-are-appropriate-uses-of-pluginstore/154346)._
