# Examples on how to use Custom tag properties

**URL:** <https://forum.inductiveautomation.com/t/examples-on-how-to-use-custom-tag-properties/95103>\
**Category:** Ignition\
**Tags:** python, ignition80, scripting\
**Created:** [August 23, 2024, 8:43pm UTC](https://forum.inductiveautomation.com/t/examples-on-how-to-use-custom-tag-properties/95103 "2024-08-23T20:43:06Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jose\_Daniel\_Hernande](https://avatars.discourse-cdn.com/v4/letter/j/bbce88/32.png) [@Jose\_Daniel\_Hernande](https://forum.inductiveautomation.com/u/Jose_Daniel_Hernande)\
**Post date:** [August 23, 2024, 8:43pm UTC](https://forum.inductiveautomation.com/t/examples-on-how-to-use-custom-tag-properties/95103/1 "2024-08-23T20:43:06Z")

</div>

Hello.  
I am trying to use Custom tag properties but I am not finding any examples in the documentation more than they exists.

I would like an example how to access that properties from the tag value change to read and write values.

It could be really helpful to create logics with steps.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [August 23, 2024, 8:51pm UTC](https://forum.inductiveautomation.com/t/examples-on-how-to-use-custom-tag-properties/95103/2 "2024-08-23T20:51:08Z")

</div>

> [@Jose\_Daniel\_Hernande](#):
>
> access that properties

Use `system.tag.readBlocking()` as usual to read them. If the tag is read-only, you will need to use `system.tag.configure` to write them. Otherwise, `system.tag.writeBlocking()` can write them, too.

Be aware that there is no formal way to access changes to tag properties by script, other than the native events for `.value` and for alarms. (UI tag bindings do seem to subscribe properly, now-a-days.)

> [@Jose\_Daniel\_Hernande](#):
>
> It could be really helpful to create logics with steps.

That sounds like a disaster in the making, if you plan on writing to custom properties regularly. They aren't really designed for that. Use custom properties as static configuration information (dynamic user interfaces and such), where the normal use of the property is just **read**.

For values, like state information, that will change with your process, use ordinary tags (memory tags, presumably).

---

<div class="post-metadata">

**Author:** ![Jose\_Daniel\_Hernande](https://avatars.discourse-cdn.com/v4/letter/j/bbce88/32.png) [@Jose\_Daniel\_Hernande](https://forum.inductiveautomation.com/u/Jose_Daniel_Hernande)\
**Post date:** [August 23, 2024, 10:08pm UTC](https://forum.inductiveautomation.com/t/examples-on-how-to-use-custom-tag-properties/95103/3 "2024-08-23T22:08:21Z")

</div>

Thanks for the tip, to me it looked like the properties could be a good option to store data.

I have a question related the memory tags and performance due tags are stored into the database and many of my tags are just volatile.

Is it possible to have memory tags just in ram?

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [August 23, 2024, 10:15pm UTC](https://forum.inductiveautomation.com/t/examples-on-how-to-use-custom-tag-properties/95103/4 "2024-08-23T22:15:36Z")

</div>

> [@Jose\_Daniel\_Hernande](#):
>
> Is it possible to have memory tags just in ram?

No, but you can use scripting global variables for such things. Look at my Integration Toolkit's [globalVarMap()](https://www.automation-pros.com/toolkit/doc/scripting.html#globalvarmap) functions.
