3.2 Financial Tags: Limits, Storage & Ledger Settlement Use
Key Takeaways
- Each legal entity can define up to 20 financial tags, and the tag names are user-defined (Microsoft Learn, Financial tags).
- Financial tags are not part of the account structure and are never validated on entry — any value can be typed, and no tag can be made mandatory.
- Tag values are stored directly on the general ledger accounting entry, not in subledger tables such as Customer transactions or Vendor transactions.
- Because tags are not part of the ledger account, tag values can be corrected after posting — unlike financial dimension values.
- Financial tags cannot be used for budget control validation; a dimension you plan to budget against must be a financial dimension inside an account structure.
3.2 Financial Tags: Limits, Storage & Ledger Settlement Use
Quick Summary: Financial tags let an organization record up to 20 user-defined fields on accounting entries without inflating the chart of accounts. They trade validation, defaulting, and budget control for near-zero performance cost, which makes them the right tool for high-cardinality transactional references.
1. Financial Tags (FinTags): Architecture & Benefits
Prior to the introduction of Financial Tags, organizations frequently created financial dimensions to track operational and transaction-level details such as Purchase Order Numbers, Work Orders, Asset IDs, Delivery Slips, or External Reference Numbers. This practice led to severe database degradation.
The Problem: Dimension Combination Bloat
Traditional financial dimensions generate unique combination records in the DimensionAttributeValueCombination (DAVC) and DimensionAttributeValueSet (DAVS) hash tables. Every time a unique combination of main account and dimension values is used, a new hash key is generated. Storing high-cardinality values (e.g., 500,000 unique PO numbers) causes:
- Massive index fragmentation and table bloat in DAVC/DAVS.
- Slow General Ledger posting throughput.
- Degradation of financial reporting query performance.
The Solution: Financial Tags (FinTags)
Financial Tags (General ledger > Chart of accounts > Dimensions > Financial tags) provide lightweight, transaction-level tracking without creating records in DAVC or DAVS.
| Architectural Attribute | Traditional Financial Dimensions | Financial Tags (FinTags) |
|---|---|---|
| Storage Mechanism | Centralized combination tables (DAVC / DAVS hash keys) | Stored directly on transaction lines (SubledgerJournalAccountEntry, GeneralJournalAccountEntry) |
| Performance Impact | Generates database bloat when tracking high-cardinality data | Zero combination table overhead; highly optimized for high volume |
| Maximum Count | Up to 11 segments in an account structure | Up to 20 user-defined financial tags per legal entity |
| Budget Control | Fully supported in Budget control configuration | Not supported for Budget control validation |
| Post-Posting Edits | Strictly immutable; requires voucher reversal and re-entry | Editable post-posting via the Edit financial tag feature on voucher transactions |
| Tag Value Types | Custom list or Entity-backed | Text (free-form), List (predefined values), or Custom List |
| Subledger Integration | All operational subledgers and journals | Supported across AP, AR, Bank, Project, Inventory, and GL journals |
Financial Tag Delimiters
When viewing tag combinations across reporting grids or data entities, tags are concatenated using a designated delimiter (e.g., -, ~, |). Delimiters are specified during financial tag setup to ensure clean parsing across external BI tools and integrations.
2. Configuration Walkthrough: Step-by-Step
+-----------------------------------------------------------------------------+
| FINANCIAL DIMENSION & TAG SETUP WORKFLOW |
+-----------------------------------------------------------------------------+
| [1. Define Dimensions] --> [2. Configure Values] --> [3. Set Ledger] |
| - GL > Dimensions - Entity or Custom - Balancing Dim |
| - Select 'Use values from' - Set Active Dates - Auto Accounts |
| |
| [4. Create FinTags] --> [5. Assign to Trans] --> [6. Post & Edit] |
| - GL > Financial tags - Enter on GL/Subledger - Edit post-posting |
| - Tag Type: Text/List - Subledger propagation - Verify in GL lines |
+-----------------------------------------------------------------------------+
Step 1: Create an Entity-Backed Dimension (Department)
- Navigate to General ledger > Chart of accounts > Dimensions > Financial dimensions.
- Click New. In the Use values from field, select Departments.
- In the Dimension name field, enter
Department. - Click Activate on the action pane to register the dimension schema.
Step 2: Create a Custom Dimension with Value Mask (SalesChannel)
- In the same form, click New.
- In Use values from, select
< Custom dimension >. - In Dimension name, enter
SalesChannel. - In the Mask field under the Value mask fast tab, enter
SC-###. - Click Dimension values in the action pane and create values:
SC-001(Retail),SC-002(Direct Online),SC-003(Wholesale).
Step 3: Configure Financial Tags for Operational Tracking
- Navigate to General ledger > Chart of accounts > Dimensions > Financial tags.
- Click New.
- Enter Tag name:
TrackingNumber, Value type:Text. - Click New to create a second tag: Tag name:
CostPool, Value type:List. - Select
CostPool, click Tag values, and add:POOL_A,POOL_B,POOL_C. - In Financial tag configuration, set the Tag delimiter to
|.
3. Tag Capacity, Enablement & Where Tags Are Supported
Each legal entity can define up to 20 financial tags. The tags are configured at General ledger > Chart of accounts > Dimensions > Financial tags, and the feature itself must first be turned on in the Feature management workspace. Tags are legal-entity specific, so the same 20-slot allowance exists separately in every company; the Financial tag configuration and Financial tags custom list value data entities let you replicate an identical setup across entities quickly.
| Property | Financial dimensions | Financial tags |
|---|---|---|
| Maximum per legal entity | Effectively unlimited (10 usable as account structure segments) | 20 |
| Part of the ledger account | Yes | No |
| Validated on entry | Yes, against account structures | Never — any value is accepted |
| Can be made mandatory | Yes | No |
| Editable after posting | No | Yes |
| Usable for budget control | Yes | No |
| Stored in subledger tables | Yes | No — general ledger accounting entries only |
Value Types and the Absence of Validation
A tag is defined with a value type of Text, List, or Custom list. The value type only shapes the lookup shown to the user — it does not enforce anything. Even for a List or Custom list tag, a user can type a value that is not in the list and the transaction will post. There is no way to require a tag value. If the business needs enforced, validated coding, the answer on the exam is always a financial dimension, never a tag.
Where Tags Are Available
Tag uptake expands with each release rather than arriving all at once. Tags started in the General journal and Global general journal, and later releases extended them to further journals and documents. Financial tags for procurement documents require Dynamics 365 Finance version 10.0.49 or later and the Enable financial tags for purchase order invoicing feature. When a case study describes tagging that is not available on a given document type, the correct answer is usually to check the release and the feature flag rather than to reconfigure the tag.
The Ledger Settlement Payoff
Because the tag value lands directly on the accounting entry, ledger settlement can match on it. A PurchaseOrderNumber tag lets the goods-received/invoice-received clearing account settle automatically by purchase order, which is precisely the scenario tags were designed for: a very high-cardinality reference (hundreds of thousands of distinct values) that would cripple the dimension combination table if it were modelled as a financial dimension.
Exam trap: If you disable the Financial tags feature after values have been entered, the database keeps the values but they disappear from every form and inquiry. Disabling is not the same as deleting.
A company wants to track 200,000 individual freight bill numbers on Accounts Payable invoice lines for analytical reporting, but the CFO is concerned about database performance and combination table index fragmentation. Furthermore, users must be able to correct mistyped freight bill numbers after posting. Which feature should the consultant recommend?
An organisation wants to record a purchase order number on general ledger accounting entries so that goods-received/invoice-received clearing balances can be matched automatically in ledger settlement. There are several hundred thousand distinct purchase order numbers. What should the functional consultant recommend, and what limit applies?