# Use of document tag vs individual tags

**URL:** <https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792>\
**Category:** Ignition\
**Tags:** perspective, ignition81\
**Created:** [December 6, 2023, 4:17pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792 "2023-12-06T16:17:52Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![vartech\_dynamics](https://avatars.discourse-cdn.com/v4/letter/v/45deac/32.png) [@vartech\_dynamics](https://forum.inductiveautomation.com/u/vartech_dynamics)\
**Post date:** [December 6, 2023, 4:17pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792/1 "2023-12-06T16:17:52Z")

</div>

I'm looking at deploying some new templates in Ignition and need to store some data as memory values. I've found this could be done simply by using memory tags as numbers or strings, but also using the document tag type and storing the data as JSON. This would be for a perspective application as well. Is there any major pro's/con's to be aware of going one way or the other? The data stored would not be regularly changed, mostly static.

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [December 6, 2023, 4:23pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792/2 "2023-12-06T16:23:08Z")

</div>

Leave the documentation properties for, ehm, documentation. If you need something special then create a custom property of the appropriate datatype on the tag and put the information there. You would then, of course, document that in the documentation property (wouldn't you?).

 ![Tag custom prop](https://us1.discourse-cdn.com/inductiveautomation/original/3X/9/8/982154fb34c7c850489e5d413a03ad505d864b28.png)

---

<div class="post-metadata">

**Author:** ![jlandwerlen](https://avatars.discourse-cdn.com/v4/letter/j/bc8723/32.png) [@jlandwerlen](https://forum.inductiveautomation.com/u/jlandwerlen)\
**Post date:** [December 6, 2023, 4:25pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792/3 "2023-12-06T16:25:12Z")

</div>

I think he means using an actual document tag, not the document prop.

---

<div class="post-metadata">

**Author:** ![vartech\_dynamics](https://avatars.discourse-cdn.com/v4/letter/v/45deac/32.png) [@vartech\_dynamics](https://forum.inductiveautomation.com/u/vartech_dynamics)\
**Post date:** [December 6, 2023, 4:34pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792/4 "2023-12-06T16:34:17Z")

</div>

Yes the document tag.

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [December 6, 2023, 4:36pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792/5 "2023-12-06T16:36:30Z")

</div>

> [@jlandwerlen](#):
>
> I think he means using an actual document tag

Hmmph! I never heard of it. It doesn't show up in my tag creation options. What is it?

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [December 6, 2023, 4:44pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792/6 "2023-12-06T16:44:38Z")

</div>

Document is a data type available for any kind of tag. It's a JSON object structure - so a map of string keys to arbitrarily deep nested JSON elements.

> [@vartech\_dynamics](#):
>
> The data stored would not be regularly changed, mostly static.

If that's really true, then sure, use documents, though they don't give you a ton of benefit other than (potentially) housing all your values in that single tag, if that's important to you. Performance wise I would expect many small tags with simpler data types to work a bit better, but it likely doesn't really matter.

---

<div class="post-metadata">

**Author:** ![jlandwerlen](https://avatars.discourse-cdn.com/v4/letter/j/bc8723/32.png) [@jlandwerlen](https://forum.inductiveautomation.com/u/jlandwerlen)\
**Post date:** [December 6, 2023, 4:46pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792/7 "2023-12-06T16:46:22Z")

</div>

[https://docs.inductiveautomation.com/display/DOC81/Tag+Data+Types#TagDataTypes-DocumentType](https://docs.inductiveautomation.com/display/DOC81/Tag+Data+Types#TagDataTypes-DocumentType)

---

<div class="post-metadata">

**Author:** ![Kyle\_Chase](https://avatars.discourse-cdn.com/v4/letter/k/9de0a6/32.png) [@Kyle\_Chase](https://forum.inductiveautomation.com/u/Kyle_Chase)\
**Post date:** [December 6, 2023, 5:10pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792/8 "2023-12-06T17:10:39Z")

</div>

We have tested this as we were wondering as well. We have three "designs" Storing metadata as individual tags, one using a metadata document tag, and one using a metadata property on a tag.  
 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/9/9/9947e0772a7121bf08c9ce15fd4cf9290d6395e1.png)

This test was done making 100,000 parent tags. Using individual tags used between 1.5 to 2 GB as a baseline. Using the other two designs used quite a bit less memory, 780 MB and 700 MB respectively. I think having a separate document tag would be the best way to tackle this design.

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [December 6, 2023, 5:17pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792/9 "2023-12-06T17:17:07Z")

</div>

As ever, actual testing beats gut feelings every time 🙂

It's probably only true at relatively large scales where the overhead adds up, but definitely useful data to keep in mind.

---

<div class="post-metadata">

**Author:** ![vartech\_dynamics](https://avatars.discourse-cdn.com/v4/letter/v/45deac/32.png) [@vartech\_dynamics](https://forum.inductiveautomation.com/u/vartech_dynamics)\
**Post date:** [December 6, 2023, 5:31pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792/10 "2023-12-06T17:31:17Z")

</div>

Interesting results Kyle\_Chase. In playing around in Perspective it seems simpler to interact with custom properties on a tag vs using json commands to retrieve and set values of document members and having to do transforms. Maybe the only benefit that a document tag would be separate from other values etc? Just not sure I see the value in the added complexity of a document tag vs custom props.

---

<div class="post-metadata">

**Author:** ![Kyle\_Chase](https://avatars.discourse-cdn.com/v4/letter/k/9de0a6/32.png) [@Kyle\_Chase](https://forum.inductiveautomation.com/u/Kyle_Chase)\
**Post date:** [December 6, 2023, 6:14pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792/11 "2023-12-06T18:14:13Z")

</div>

It comes down to personal preference. Having a bunch of properties on a single tag also works, but woiuld require multiple tag reads to access all data, vs a single metadata property or tag.

---

<div class="post-metadata">

**Author:** ![Nathaniel.Jarrett](https://avatars.discourse-cdn.com/v4/letter/n/f07891/32.png) [@Nathaniel.Jarrett](https://forum.inductiveautomation.com/u/Nathaniel.Jarrett)\
**Post date:** [May 2, 2024, 10:04pm UTC](https://forum.inductiveautomation.com/t/use-of-document-tag-vs-individual-tags/82792/12 "2024-05-02T22:04:33Z")

</div>

Thank you @Kyle_Chase for doing the deep work on this. Answered a lot of questions we had for our implementation and what the benefits/concerns were. Likely will use the document tag for tracking metadata at the folder level and not store the same data multiple times across tags.
