<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.2 20190208//EN" "http://jats.nlm.nih.gov/publishing/1.2/JATS-journalpublishing1.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article" dtd-version="1.2" xml:lang="en">
    <front>
        <journal-meta>
            <journal-id journal-id-type="pmc">F1000Research</journal-id>
            <journal-title-group>
                <journal-title>F1000Research</journal-title>
            </journal-title-group>
            <issn pub-type="epub">2046-1402</issn>
            <publisher>
                <publisher-name>F1000 Research Limited</publisher-name>
                <publisher-loc>London, UK</publisher-loc>
            </publisher>
        </journal-meta>
        <article-meta>
            <article-id pub-id-type="doi">10.12688/f1000research.175696.1</article-id>
            <article-categories>
                <subj-group subj-group-type="heading">
                    <subject>Research Article</subject>
                </subj-group>
                <subj-group>
                    <subject>Articles</subject>
                </subj-group>
            </article-categories>
            <title-group>
                <article-title>Quasi-Stationary Promotion Modeling: Measuring the Lifespan and Effectiveness of Marketing Promotions</article-title>
                <fn-group content-type="pub-status">
                    <fn>
                        <p>[version 1; peer review: 2 approved with reservations]</p>
                    </fn>
                </fn-group>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author" corresp="yes">
                    <name>
                        <surname>Gunasekaran</surname>
                        <given-names>Vinodhkumar</given-names>
                    </name>
                    <role content-type="http://credit.niso.org/">Conceptualization</role>
                    <role content-type="http://credit.niso.org/">Data Curation</role>
                    <role content-type="http://credit.niso.org/">Formal Analysis</role>
                    <role content-type="http://credit.niso.org/">Investigation</role>
                    <role content-type="http://credit.niso.org/">Methodology</role>
                    <role content-type="http://credit.niso.org/">Resources</role>
                    <role content-type="http://credit.niso.org/">Software</role>
                    <role content-type="http://credit.niso.org/">Visualization</role>
                    <role content-type="http://credit.niso.org/">Writing &#x2013; Original Draft Preparation</role>
                    <uri content-type="orcid">https://orcid.org/0000-0002-0817-0923</uri>
                    <xref ref-type="corresp" rid="c1">a</xref>
                    <xref ref-type="aff" rid="a1">1</xref>
                </contrib>
                <contrib contrib-type="author" corresp="no">
                    <name>
                        <surname>Elango</surname>
                        <given-names>Ilamathi</given-names>
                    </name>
                    <role content-type="http://credit.niso.org/">Resources</role>
                    <role content-type="http://credit.niso.org/">Supervision</role>
                    <role content-type="http://credit.niso.org/">Validation</role>
                    <role content-type="http://credit.niso.org/">Writing &#x2013; Review &amp; Editing</role>
                    <xref ref-type="aff" rid="a2">2</xref>
                </contrib>
                <contrib contrib-type="author" corresp="no">
                    <name>
                        <surname>Parthasarathy</surname>
                        <given-names>Arunkumar</given-names>
                    </name>
                    <role content-type="http://credit.niso.org/">Writing &#x2013; Review &amp; Editing</role>
                    <xref ref-type="aff" rid="a3">3</xref>
                </contrib>
                <aff id="a1">
                    <label>1</label>Global Analytics &amp; Solutions, Circana, Chicago, Illinois, 60606, USA</aff>
                <aff id="a2">
                    <label>2</label>Sales Compensation, Medline Industries, Northfield, Illinois, 60093, USA</aff>
                <aff id="a3">
                    <label>3</label>Customer Solutions for Industries,, Oracle, Austin, Texas, 78741, USA</aff>
            </contrib-group>
            <author-notes>
                <corresp id="c1">
                    <label>a</label>
                    <email xlink:href="mailto:vinodh.gunasekaran@circana.com">vinodh.gunasekaran@circana.com</email>
                </corresp>
                <fn fn-type="conflict">
                    <p>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>26</day>
                <month>12</month>
                <year>2025</year>
            </pub-date>
            <pub-date pub-type="collection">
                <year>2025</year>
            </pub-date>
            <volume>14</volume>
            <elocation-id>1457</elocation-id>
            <history>
                <date date-type="accepted">
                    <day>18</day>
                    <month>12</month>
                    <year>2025</year>
                </date>
            </history>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2025 Gunasekaran V et al.</copyright-statement>
                <copyright-year>2025</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access article distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <self-uri content-type="pdf" xlink:href="https://f1000research.com/articles/14-1457/pdf"/>
            <abstract>
                <sec>
                    <title>Background</title>
                    <p>Promotions in consumer packaged goods (CPG) markets are inherently transient. Each campaign, be it a temporary price reduction (TPR), feature advertisement, in-store display, or combined feature and display, produces an immediate surge in sales followed by an eventual decline once the event ends. Despite this, sales patterns during the active promotional phase often exhibit conditional stability.</p>
                </sec>
                <sec>
                    <title>Methods</title>
                    <p>We introduce a quasi-stationary promotion modeling framework that applies quasi-stationary distributions (QSDs) to characterize the conditional behavior of promotional sales prior to termination. By treating the end of a promotion as an absorbing state and the underlying mechanics (TPR, Feature, Display, and Feature + Display) as transient states, we model the system as a finite-state Markov process. The left eigenvector of the transition sub-matrix yields the conditional sales mix 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:mi>m</mml:mi>
                            </mml:math>
</inline-formula>, while the dominant eigenvalue provides the decay rate 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:mi>&#x03b1;</mml:mi>
                            </mml:math>
</inline-formula> governing promotional persistence. Using simulated 104 -week UPC-level data, we estimate transition probabilities, derive QSD parameters, and analyze promotion lifespans.</p>
                </sec>
                <sec>
                    <title>Results</title>
                    <p>The QSD-based framework quantifies both the effective duration of promotions (via 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:mi>&#x03b1;</mml:mi>
                            </mml:math>
</inline-formula> and 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:mn>1</mml:mn>
                                <mml:mo>/</mml:mo>
                                <mml:mi>&#x03b1;</mml:mi>
                            </mml:math>
</inline-formula>) and the relative dominance of different promotional tactics during the active phase (via 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:mi>m</mml:mi>
                            </mml:math>
</inline-formula>). In simulated CPG settings, the approach differentiates between long-lived and fast-decaying promotions and reveals how transitions among TPR, Feature, Display, and Feature + Display shape conditional sales composition while the promotion is still live.</p>
                </sec>
                <sec>
                    <title>Conclusions</title>
                    <p>Quasi-stationary promotion modeling provides a unified stochastic basis for understanding promotion dynamics, forecasting lift persistence, and optimizing campaign duration. By linking QSD theory with applied decision intelligence in CPG analytics, the framework offers interpretable parameters that can be embedded into promotion planning, portfolio management, and real-time decision systems.</p>
                </sec>
            </abstract>
            <kwd-group kwd-group-type="author">
                <kwd>Quasi Stationary Distribution</kwd>
                <kwd>Markov Processes</kwd>
                <kwd>Promotion Dynamics</kwd>
                <kwd>Consumer Packaged Goods</kwd>
                <kwd>Sales Lift Modeling</kwd>
                <kwd>Decay Rate</kwd>
                <kwd>Conditional Sales Stability</kwd>
                <kwd>Marketing Analytics</kwd>
                <kwd>Retail Optimization</kwd>
                <kwd>Transient State Modeling</kwd>
                <kwd>Demand Forecasting</kwd>
                <kwd>Stochastic Decision Intelligence</kwd>
            </kwd-group>
            <funding-group>
                <funding-statement>The author(s) declared that no grants were involved in supporting this work.</funding-statement>
            </funding-group>
        </article-meta>
    </front>
    <body>
        <sec id="sec5" sec-type="intro">
            <title>Introduction</title>
            <p>Promotional events are among the most powerful yet short lived mechanisms for driving incremental sales in the consumer packaged goods (CPG) industry. Across categories and retailers, tactics such as temporary price reductions (TPR), feature advertising, in store displays, and combined feature and display campaigns generate measurable sales uplifts followed by predictable decline once the activity ends.
                <sup>
                    <xref ref-type="bibr" rid="ref1">1</xref>
                </sup> Although each promotion terminates after a finite period, the sales process often enters a phase of conditional stability. Conditional on the promotion still being active, sales uplift fluctuates within a relatively narrow and stable range.
                <sup>
                    <xref ref-type="bibr" rid="ref1">1</xref>
                </sup>
            </p>
            <p>This behavior parallels the mathematical construct of a quasi stationary distribution (QSD) in stochastic process theory.
                <sup>
                    <xref ref-type="bibr" rid="ref2">2</xref>&#x2013;
                    <xref ref-type="bibr" rid="ref5">5</xref>
                </sup> In a QSD framework, the promotion end is treated as an absorbing state, while the active promotional mechanics correspond to transient states through which the system evolves prior to termination. The QSD describes the conditional distribution of sales uplift across these transient states, given that absorption has not yet occurred.
                <sup>
                    <xref ref-type="bibr" rid="ref3">3</xref>
                </sup> Formally, if 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>X</mml:mi>
                        <mml:mrow>
                            <mml:mo stretchy="true">(</mml:mo>
                            <mml:mi>t</mml:mi>
                            <mml:mo stretchy="true">)</mml:mo>
                        </mml:mrow>
                    </mml:math>
</inline-formula> denotes the promotional state of a product at week 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>t</mml:mi>
                    </mml:math>
</inline-formula> and 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>Q</mml:mi>
                    </mml:math>
</inline-formula> is the transition rate matrix governing week to week changes among TPR, Feature, Display, and Feature plus Display, then a distribution 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>m</mml:mi>
                    </mml:math>
</inline-formula> on the non absorbing states satisfies the quasi stationary condition shown in (1). The matrix 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>P</mml:mi>
                        <mml:mrow>
                            <mml:mo stretchy="true">(</mml:mo>
                            <mml:mi>t</mml:mi>
                            <mml:mo stretchy="true">)</mml:mo>
                        </mml:mrow>
                        <mml:mo>=</mml:mo>
                        <mml:msup>
                            <mml:mi>e</mml:mi>
                            <mml:mi mathvariant="italic">Qt</mml:mi>
                        </mml:msup>
                    </mml:math>
</inline-formula> represents transition probabilities and 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>c</mml:mi>
                        <mml:mrow>
                            <mml:mo stretchy="true">(</mml:mo>
                            <mml:mi>t</mml:mi>
                            <mml:mo stretchy="true">)</mml:mo>
                        </mml:mrow>
                    </mml:math>
</inline-formula> denotes the probability that the promotion remains active at time 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>t</mml:mi>
                    </mml:math>
</inline-formula>:
                <disp-formula id="e1">

                    <mml:math display="block">
                        <mml:mi mathvariant="italic">mP</mml:mi>
                        <mml:mrow>
                            <mml:mo stretchy="true">(</mml:mo>
                            <mml:mi>t</mml:mi>
                            <mml:mo stretchy="true">)</mml:mo>
                        </mml:mrow>
                        <mml:mo>=</mml:mo>
                        <mml:mi>c</mml:mi>
                        <mml:mrow>
                            <mml:mo stretchy="true">(</mml:mo>
                            <mml:mi>t</mml:mi>
                            <mml:mo stretchy="true">)</mml:mo>
                        </mml:mrow>
                        <mml:mi>m</mml:mi>
                        <mml:mo>,</mml:mo>
                        <mml:mi>t</mml:mi>
                        <mml:mo>&gt;</mml:mo>
                        <mml:mn>0</mml:mn>
                        <mml:mo>.</mml:mo>
                    </mml:math>
</disp-formula>
</p>
            <p>Differentiating at 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>t</mml:mi>
                        <mml:mo>=</mml:mo>
                        <mml:mn>0</mml:mn>
                    </mml:math>
</inline-formula> yields the eigenvalue form in (2):
                <disp-formula id="e2">

                    <mml:math display="block">
                        <mml:mi mathvariant="italic">mQ</mml:mi>
                        <mml:mo>=</mml:mo>
                        <mml:mo>&#x2212;</mml:mo>
                        <mml:mi mathvariant="italic">&#x03b1;m</mml:mi>
                        <mml:mo>,</mml:mo>
                    </mml:math>
</disp-formula>where 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>&#x03b1;</mml:mi>
                    </mml:math>
</inline-formula> represents the weekly decay rate or hazard of promotion termination.
                <sup>
                    <xref ref-type="bibr" rid="ref6">6</xref>
                </sup>
            </p>
            <p>Reinterpreting these stochastic concepts for CPG analytics provides a rigorous statistical foundation for understanding promotion persistence, conditional sales composition, and tactical resilience. The quasi stationary approach captures how promotions evolve prior to termination, linking short term execution dynamics with long term decision intelligence.
                <sup>
                    <xref ref-type="bibr" rid="ref7">7</xref>
                </sup>
            </p>
            <p>
                <xref ref-type="fig" rid="f1">
Figure 1</xref> illustrates the overall lifecycle of a promotion from activation to end. 
                <xref ref-type="table" rid="T1">
Table 1</xref> summarizes the mapping between stochastic constructs and their CPG promotional equivalents.</p>
            <fig fig-type="figure" id="f1" orientation="portrait" position="float">
                <label>
Figure 1. </label>
                <caption>
                    <title>Promotion lifecycle in CPG markets.</title>
                    <p>The figure illustrates the typical evolution of weekly sales during a promotion, from launch and active phases through stability, decay, and eventual termination, modeled as an absorbing state.</p>
                </caption>
                <graphic id="gr1" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/193700/edc2a1b8-112b-4c73-88d7-88857277c55d_figure1.gif"/>
            </fig>
            <table-wrap id="T1" orientation="portrait" position="float">
                <label>
Table 1. </label>
                <caption>
                    <title>Mapping of stochastic constructs to CPG promotional equivalents.</title>
                </caption>
                <table content-type="article-table" frame="hsides">
                    <thead>
                        <tr>
                            <th align="left" colspan="1" rowspan="1" valign="top">
Construct</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">Mathematical meaning</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">CPG interpretation</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Absorbing State</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Terminal state the process cannot leave</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Promotion end or deactivation</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Transient States</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">States visited before absorption</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">TPR, Feature, Display, Feature+Display</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Decay Rate 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi mathvariant="bold-italic">&#x03b1;</mml:mi>
                                    </mml:math>
</inline-formula>
</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Eigenvalue governing absorption rate</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Weekly probability promotion effectiveness ends</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Quasi-Stationary Distribution 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi mathvariant="bold-italic">m</mml:mi>
                                    </mml:math>
</inline-formula>
</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Conditional distribution before absorption</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Relative share of active promotion mechanics</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Survival Function 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi mathvariant="bold-italic">S</mml:mi>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">(</mml:mo>
                                            <mml:mi mathvariant="bold-italic">t</mml:mi>
                                            <mml:mo stretchy="true">)</mml:mo>
                                        </mml:mrow>
                                        <mml:mo mathvariant="bold">=</mml:mo>
                                        <mml:msup>
                                            <mml:mi mathvariant="bold-italic">e</mml:mi>
                                            <mml:mrow>
                                                <mml:mo mathvariant="bold">&#x2212;</mml:mo>
                                                <mml:mi mathvariant="bold-italic">&#x03b1;t</mml:mi>
                                            </mml:mrow>
                                        </mml:msup>
                                    </mml:math>
</inline-formula>
</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Probability process remains unabsorbed at time 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>t</mml:mi>
                                    </mml:math>
</inline-formula>
</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Probability a promotion remains active after 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>t</mml:mi>
                                    </mml:math>
</inline-formula> weeks</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Expected Lifetime 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mn mathvariant="bold">1</mml:mn>
                                        <mml:mo>/</mml:mo>
                                        <mml:mi mathvariant="bold-italic">&#x03b1;</mml:mi>
                                    </mml:math>
</inline-formula>
</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Mean time to absorption</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Expected duration of promotional effectiveness</td>
                        </tr>
                    </tbody>
                </table>
                <table-wrap-foot>
                    <p>This table summarizes key stochastic process concepts and their corresponding interpretations in CPG promotion analytics.</p>
                </table-wrap-foot>
            </table-wrap>
            <sec id="sec6">
                <title>Related work</title>
                <p>The study of quasi-stationary distributions (QSDs) originated in the mid-20th century to describe systems that persist in transient states before eventual absorption. Although developed within branching, diffusion, and Markov processes, the framework naturally extends to promotional dynamics where temporary stability precedes termination.
                    <sup>
                        <xref ref-type="bibr" rid="ref2">2</xref>,
                        <xref ref-type="bibr" rid="ref6">6</xref>,
                        <xref ref-type="bibr" rid="ref8">8</xref>&#x2013;
                        <xref ref-type="bibr" rid="ref10">10</xref>
                    </sup> The historical progression of quasi-stationary research across foundational decades is summarized in 
                    <xref ref-type="fig" rid="f2">
Figure 2</xref>.</p>
                <fig fig-type="figure" id="f2" orientation="portrait" position="float">
                    <label>
Figure 2. </label>
                    <caption>
                        <title>Evolution of quasi-stationary distribution research and applications.</title>
                        <p>The figure summarizes key milestones in the development of quasi-stationary distribution theory, from early branching processes and Markov chain formulations to modern applications in CPG promotion analytics.</p>
                    </caption>
                    <graphic id="gr2" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/193700/edc2a1b8-112b-4c73-88d7-88857277c55d_figure2.gif"/>
                </fig>
            </sec>
            <sec id="sec7">
                <title>Early foundations</title>
                <p>Yaglom (1947) analyzed subcritical branching processes and showed that conditional distributions converge to stable forms given non-extinction.
                    <sup>
                        <xref ref-type="bibr" rid="ref2">2</xref>
                    </sup> Bartlett (1955) and Kingman (1963) expanded spectral interpretations linking decay rates to generator eigenvalues.
                    <sup>
                        <xref ref-type="bibr" rid="ref6">6</xref>,
                        <xref ref-type="bibr" rid="ref8">8</xref>
                    </sup>
                </p>
            </sec>
            <sec id="sec8">
                <title>Markovian formulation</title>
                <p>Darroch and Seneta 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mn>1965</mml:mn>
                                <mml:mo>,</mml:mo>
                                <mml:mn>1967</mml:mn>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula> formalized QSDs for continuous-time Markov chains, proving existence and uniqueness and establishing the canonical relationship 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi mathvariant="italic">mQ</mml:mi>
                            <mml:mo>=</mml:mo>
                            <mml:mo>&#x2212;</mml:mo>
                            <mml:mi mathvariant="italic">&#x03b1;m</mml:mi>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</inline-formula>
                    <sup>
                        <xref ref-type="bibr" rid="ref3">3</xref>
                    </sup> Vere-Jones (1969) developed limit theorems and invariance properties,
                    <sup>
                        <xref ref-type="bibr" rid="ref11">11</xref>
                    </sup> while Pakes (1973) connected QSDs to random-walk and catastrophe models.
                    <sup>
                        <xref ref-type="bibr" rid="ref7">7</xref>
                    </sup>
                </p>
            </sec>
            <sec id="sec9">
                <title>Computational advances</title>
                <p>From 1991 to 1994, Van Doorn and collaborators introduced numerical methods for quasi-birth-death (QBD) processes, enabling large-scale computation of (
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>m</mml:mi>
                            <mml:mo>,</mml:mo>
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula>) and bridging stochastic theory with real-world analytics.
                    <sup>
                        <xref ref-type="bibr" rid="ref12">12</xref>,
                        <xref ref-type="bibr" rid="ref13">13</xref>
                    </sup>
                </p>
                <p>A chronological summary of these foundational contributions is provided in 
                    <xref ref-type="table" rid="T2">
Table 2</xref>.</p>
                <table-wrap id="T2" orientation="portrait" position="float">
                    <label>
Table 2. </label>
                    <caption>
                        <title>Chronological timeline of foundational QSD research (1947-1994).</title>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">
Author(s)</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">
Year</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Primary contribution</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Relevance to CPG promotion modeling</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Yaglom</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1947</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Introduced quasistationarity in branching processes</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Basis for modeling temporary stability such as active promotions.</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Bartlett</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1955</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Extended QSD to population and diffusion processes</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Early integration of stochastic stability in applied systems.</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Kingman</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1963</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Developed spectral and diffusion interpretations</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Provided eigenvalue structure used for decay-rate estimation.</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Darroch Seneta</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1965-1967</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Formalized QSDs for CTMCs; proved existence and uniqueness</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Theoretical basis for matrix driven promotion modeling.</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Vere-Jones
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1969</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Established limit theorems for transient Markov systems</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Linked conditional long-run behavior to QSD stability.</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Pakes</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1973</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Connected QSDs to random walks and catastrophe processes</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Provided real-world analogs for promotion endings.</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Kijima Seneta</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">&amp;</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Extended QSDs to renewal and survival models</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Bridge to retention and reliability-style marketing models.</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Van Doorn</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1991&#x2013;1994</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Numerical QSD methods for QBD processes</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Enabled empirical computation of (
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi>m</mml:mi>
                                            <mml:mo>,</mml:mo>
                                            <mml:mi>&#x03b1;</mml:mi>
                                        </mml:math>
</inline-formula>) at scale.</td>
                            </tr>
                        </tbody>
                    </table>
                    <table-wrap-foot>
                        <p>The table summarizes key theoretical developments in quasi-stationary distribution theory and their relevance to CPG promotion modeling.</p>
                    </table-wrap-foot>
                </table-wrap>
            </sec>
            <sec id="sec10">
                <title>Gap in literature</title>
                <p>QSD theory is well established in probability and applied stochastic processes, but there is no prior work applying quasi-stationary analysis to trade promotion effectiveness, conditional sales behavior, or marketing lift persistence. Existing CPG promotion models focus on lift magnitude, elasticity, or carryover effects, whereas QSDs characterize the conditional composition and duration of promotional states before termination. This gap is where our contribution comes in; introducing (
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>m</mml:mi>
                            <mml:mo>,</mml:mo>
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula>) as interpretable stochastic indicators of promotional persistence and mechanic dominance.</p>
            </sec>
        </sec>
        <sec id="sec11" sec-type="methods">
            <title>Methods</title>
            <sec id="sec12">
                <title>Theoretical framework</title>
                <p>Promotional dynamics in CPG markets can be rigorously modeled as a continuous-time Markov process, where each week corresponds to a transition among distinct promotional states. Let the finite state space be
                    <disp-formula id="e3">

                        <mml:math display="block">
                            <mml:mi>S</mml:mi>
                            <mml:mo>=</mml:mo>
                            <mml:mrow>
                                <mml:mo stretchy="true">{</mml:mo>
                                <mml:mi>TPR</mml:mi>
                                <mml:mo>,</mml:mo>
                                <mml:mtext>Feature</mml:mtext>
                                <mml:mo>,</mml:mo>
                                <mml:mtext>Display</mml:mtext>
                                <mml:mo>,</mml:mo>
                                <mml:mtext>Feature</mml:mtext>
                                <mml:mo>+</mml:mo>
                                <mml:mtext>Display</mml:mtext>
                                <mml:mo>,</mml:mo>
                                <mml:mi>End</mml:mi>
                                <mml:mo stretchy="true">}</mml:mo>
                            </mml:mrow>
                        </mml:math>
</disp-formula>where &#x201c;End&#x201d; denotes the absorbing state representing promotion termination, and all other states form the transient subset 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msup>
                                <mml:mi>S</mml:mi>
                                <mml:mo>&#x2032;</mml:mo>
                            </mml:msup>
                            <mml:mo>=</mml:mo>
                            <mml:mi>S</mml:mi>
                            <mml:mo>\</mml:mo>
                            <mml:mo stretchy="true">{</mml:mo>
                        </mml:math>
</inline-formula>End
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mo stretchy="true">}</mml:mo>
                        </mml:math>
</inline-formula>.</p>
                <p>The process evolves according to a transition-rate matrix 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>Q</mml:mi>
                            <mml:mo>=</mml:mo>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>q</mml:mi>
                                    <mml:mi mathvariant="italic">ij</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula>, where
                    <disp-formula id="e4">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>q</mml:mi>
                                <mml:mi mathvariant="italic">ij</mml:mi>
                            </mml:msub>
                            <mml:mo>&#x2265;</mml:mo>
                            <mml:mn>0</mml:mn>
                            <mml:mo>,</mml:mo>
                            <mml:mi>i</mml:mi>
                            <mml:mo>&#x2260;</mml:mo>
                            <mml:mi>j</mml:mi>
                            <mml:mo>,</mml:mo>
                            <mml:msub>
                                <mml:mi>q</mml:mi>
                                <mml:mi mathvariant="italic">ii</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mo>&#x2212;</mml:mo>
                            <mml:munder>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mi>j</mml:mi>
                                    <mml:mo>&#x2260;</mml:mo>
                                    <mml:mi>i</mml:mi>
                                </mml:mrow>
                            </mml:munder>
                            <mml:mspace width="0.1em"/>
                            <mml:msub>
                                <mml:mi>q</mml:mi>
                                <mml:mi mathvariant="italic">ij</mml:mi>
                            </mml:msub>
                        </mml:math>
</disp-formula>
</p>
                <p>The corresponding transition-probability matrix at time 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>t</mml:mi>
                        </mml:math>
</inline-formula> is 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>P</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:msup>
                                <mml:mi>e</mml:mi>
                                <mml:mi mathvariant="italic">Qt</mml:mi>
                            </mml:msup>
                        </mml:math>
</inline-formula>, where each entry 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>p</mml:mi>
                                <mml:mi mathvariant="italic">ij</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula> gives the probability of moving from state 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>i</mml:mi>
                        </mml:math>
</inline-formula> to 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>j</mml:mi>
                        </mml:math>
</inline-formula> after 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>t</mml:mi>
                        </mml:math>
</inline-formula> weeks.
                    <sup>
                        <xref ref-type="bibr" rid="ref8">8</xref>
                    </sup> Because every promotion eventually ends, the absorbing state is reached with probability one:
                    <disp-formula id="e5">

                        <mml:math display="block">
                            <mml:mo>Pr</mml:mo>
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mi>X</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi>t</mml:mi>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo>=</mml:mo>
                                <mml:mi>End</mml:mi>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                            <mml:mo>&#x2192;</mml:mo>
                            <mml:mn>1</mml:mn>
                            <mml:mspace width="0.25em"/>
                            <mml:mi>as</mml:mi>
                            <mml:mspace width="0.25em"/>
                            <mml:mi>t</mml:mi>
                            <mml:mo>&#x2192;</mml:mo>
                            <mml:mo>&#x221e;</mml:mo>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</disp-formula>
                </p>
            </sec>
            <sec id="sec13">
                <title>Quasi-stationary condition</title>
                <p>A distribution 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>m</mml:mi>
                            <mml:mo>=</mml:mo>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>m</mml:mi>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>,</mml:mo>
                            <mml:mi>i</mml:mi>
                            <mml:mo>&#x2208;</mml:mo>
                            <mml:msup>
                                <mml:mi>S</mml:mi>
                                <mml:mo>&#x2032;</mml:mo>
                            </mml:msup>
                        </mml:math>
</inline-formula> is quasi-stationary if the conditional distribution over the active states remains constant given that the promotion has not yet ended:
                    <disp-formula id="e6">

                        <mml:math display="block">
                            <mml:mi mathvariant="italic">mP</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:mi>c</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mi>m</mml:mi>
                            <mml:mo>,</mml:mo>
                            <mml:mi>t</mml:mi>
                            <mml:mo>&gt;</mml:mo>
                            <mml:mn>0</mml:mn>
                        </mml:math>
</disp-formula>where 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>c</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula> is the probability that the promotion remains active at time 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>t</mml:mi>
                        </mml:math>
</inline-formula>.</p>
                <p>Differentiating (5) at 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>t</mml:mi>
                            <mml:mo>=</mml:mo>
                            <mml:mn>0</mml:mn>
                        </mml:math>
</inline-formula> yields the key eigenvalue condition:
                    <disp-formula id="e7">

                        <mml:math display="block">
                            <mml:mi mathvariant="italic">mQ</mml:mi>
                            <mml:mo>=</mml:mo>
                            <mml:mo>&#x2212;</mml:mo>
                            <mml:mi mathvariant="italic">&#x03b1;m</mml:mi>
                            <mml:mo>,</mml:mo>
                        </mml:math>
</disp-formula>where 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                            <mml:mo>&gt;</mml:mo>
                            <mml:mn>0</mml:mn>
                        </mml:math>
</inline-formula> is the decay rate representing the exponential hazard of promotional termination.
                    <sup>
                        <xref ref-type="bibr" rid="ref3">3</xref>
                    </sup>
                </p>
            </sec>
            <sec id="sec14">
                <title>Interpretation for promotions</title>
                <p>

                    <list list-type="bullet">
                        <list-item>
                            <label>&#x2022;</label>
                            <p>The vector 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>m</mml:mi>
                                    </mml:math>
</inline-formula> represents the long-run conditional mix of promotion mechanics (TPR, Feature, Display, Feature + Display) given that the promotion is still active.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>The scalar 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>&#x03b1;</mml:mi>
                                    </mml:math>
</inline-formula> denotes the weekly hazard rate of promotion termination.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>The survival function gives the probability a promotion remains active after 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>t</mml:mi>
                                    </mml:math>
</inline-formula> weeks:

                                <disp-formula id="e8">

                                    <mml:math display="block">
                                        <mml:mi>S</mml:mi>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">(</mml:mo>
                                            <mml:mi>t</mml:mi>
                                            <mml:mo stretchy="true">)</mml:mo>
                                        </mml:mrow>
                                        <mml:mo>=</mml:mo>
                                        <mml:msup>
                                            <mml:mi>e</mml:mi>
                                            <mml:mrow>
                                                <mml:mo>&#x2212;</mml:mo>
                                                <mml:mi mathvariant="italic">&#x03b1;t</mml:mi>
                                            </mml:mrow>
                                        </mml:msup>
                                    </mml:math>
</disp-formula>
</p>
                            <p>
which implies an expected promotional lifespan of 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>E</mml:mi>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">[</mml:mo>
                                            <mml:mi>T</mml:mi>
                                            <mml:mo stretchy="true">]</mml:mo>
                                        </mml:mrow>
                                        <mml:mo>=</mml:mo>
                                        <mml:mn>1</mml:mn>
                                        <mml:mo>/</mml:mo>
                                        <mml:mi>&#x03b1;</mml:mi>
                                    </mml:math>
</inline-formula> weeks.</p>
                        </list-item>
                    </list>
                </p>
                <p>Together, these components form a rigorous stochastic structure that captures the balance between temporary stability and inevitable decline within a promotional campaign.
                    <sup>
                        <xref ref-type="bibr" rid="ref2">2</xref>,
                        <xref ref-type="bibr" rid="ref6">6</xref>
                    </sup>
                </p>
                <p>The transition structure among these states is illustrated in 
                    <xref ref-type="fig" rid="f3">
Figure 3</xref>. A detailed summary of notation and state definitions is provided in 
                    <xref ref-type="table" rid="T3">
Table 3</xref>.</p>
                <fig fig-type="figure" id="f3" orientation="portrait" position="float">
                    <label>
Figure 3. </label>
                    <caption>
                        <title>Markov transition structure of promotion states.</title>
                        <p>The diagram shows allowable transitions between promotional states (TPR, Feature, Display, and Feature + Display) and the absorbing end state, representing promotion termination.</p>
                    </caption>
                    <graphic id="gr3" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/193700/edc2a1b8-112b-4c73-88d7-88857277c55d_figure3.gif"/>
                </fig>
                <table-wrap id="T3" orientation="portrait" position="float">
                    <label>
Table 3. </label>
                    <caption>
                        <title>State definitions and notation summary.</title>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">Symbol</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Definition</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Interpretation in CPG context</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi mathvariant="bold-italic">S</mml:mi>
                                        </mml:math>
</inline-formula>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Full state space</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">All promotion states (TPR, Feature, Display, Feature+Display, End)</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:msup>
                                                <mml:mi mathvariant="bold-italic">S</mml:mi>
                                                <mml:mo>&#x2032;</mml:mo>
                                            </mml:msup>
                                        </mml:math>
</inline-formula>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Transient states</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Active promotion mechanics still running</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi mathvariant="bold-italic">Q</mml:mi>
                                        </mml:math>
</inline-formula>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Generator matrix</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Week-to-week transitions between promotion states</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:msup>
                                                <mml:mi mathvariant="bold-italic">Q</mml:mi>
                                                <mml:mrow>
                                                    <mml:mo stretchy="true">(</mml:mo>
                                                    <mml:mn mathvariant="bold">0</mml:mn>
                                                    <mml:mo stretchy="true">)</mml:mo>
                                                </mml:mrow>
                                            </mml:msup>
                                        </mml:math>
</inline-formula>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Sub-matrix excluding absorbing state</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Transitions among active promotion types</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi mathvariant="bold-italic">P</mml:mi>
                                            <mml:mrow>
                                                <mml:mo stretchy="true">(</mml:mo>
                                                <mml:mi mathvariant="bold-italic">t</mml:mi>
                                                <mml:mo stretchy="true">)</mml:mo>
                                            </mml:mrow>
                                            <mml:mo mathvariant="bold">=</mml:mo>
                                            <mml:msup>
                                                <mml:mi mathvariant="bold-italic">e</mml:mi>
                                                <mml:mi mathvariant="bold-italic">Qt</mml:mi>
                                            </mml:msup>
                                        </mml:math>
</inline-formula>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Transition matrix at time 
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi>t</mml:mi>
                                        </mml:math>
</inline-formula>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Probability of moving between states after 
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi>t</mml:mi>
                                        </mml:math>
</inline-formula> weeks</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi mathvariant="bold-italic">m</mml:mi>
                                        </mml:math>
</inline-formula>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Quasi-stationary distribution</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Conditional share of promotion mechanics while still active</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi mathvariant="bold-italic">&#x03b1;</mml:mi>
                                        </mml:math>
</inline-formula>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Absorption rate</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Weekly hazard rate of promotion termination</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi mathvariant="bold-italic">S</mml:mi>
                                            <mml:mrow>
                                                <mml:mo stretchy="true">(</mml:mo>
                                                <mml:mi mathvariant="bold-italic">t</mml:mi>
                                                <mml:mo stretchy="true">)</mml:mo>
                                            </mml:mrow>
                                        </mml:math>
</inline-formula>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Survival function</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Probability the promotion remains active at week 
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi>t</mml:mi>
                                        </mml:math>
</inline-formula>
</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi mathvariant="bold-italic">v</mml:mi>
                                        </mml:math>
</inline-formula>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Right eigenvector of 
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:msup>
                                                <mml:mi>Q</mml:mi>
                                                <mml:mrow>
                                                    <mml:mo stretchy="true">(</mml:mo>
                                                    <mml:mn>0</mml:mn>
                                                    <mml:mo stretchy="true">)</mml:mo>
                                                </mml:mrow>
                                            </mml:msup>
                                        </mml:math>
</inline-formula>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Expected transitions under QSD conditions</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi mathvariant="bold-italic">T</mml:mi>
                                        </mml:math>
</inline-formula>
</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Time to absorption</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Duration until promotion ends</td>
                            </tr>
                        </tbody>
                    </table>
                    <table-wrap-foot>
                        <p>This table lists the symbols, definitions, and interpretations used in the promotion Markov and quasi-stationary framework.</p>
                    </table-wrap-foot>
                </table-wrap>
            </sec>
            <sec id="sec15">
                <title>Promotion-state dynamics</title>
                <p>Promotional programs typically cycle through multiple mechanics before termination. A product may move from a TPR to a feature advertisement, subsequently receive a display, or combine both tactics in a feature + display campaign before eventually reverting to base pricing or ending the promotion.
                    <sup>
                        <xref ref-type="bibr" rid="ref1">1</xref>
                    </sup> This evolving structure is captured through a transition network of promotional states with distinct lift patterns.</p>
                <p>Let the transient state set be 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msup>
                                <mml:mi>S</mml:mi>
                                <mml:mo>&#x2032;</mml:mo>
                            </mml:msup>
                            <mml:mo>=</mml:mo>
                            <mml:mrow>
                                <mml:mo stretchy="true">{</mml:mo>
                                <mml:mn>1</mml:mn>
                                <mml:mo>,</mml:mo>
                                <mml:mn>2</mml:mn>
                                <mml:mo>,</mml:mo>
                                <mml:mn>3</mml:mn>
                                <mml:mo>,</mml:mo>
                                <mml:mn>4</mml:mn>
                                <mml:mo stretchy="true">}</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula> corresponding to TPR, Feature, Display, and Feature + Display. For active states 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>i</mml:mi>
                            <mml:mo>,</mml:mo>
                            <mml:mi>j</mml:mi>
                            <mml:mo>&#x2208;</mml:mo>
                            <mml:msup>
                                <mml:mi>S</mml:mi>
                                <mml:mo>&#x2032;</mml:mo>
                            </mml:msup>
                        </mml:math>
</inline-formula>, the one-step transition probability is
                    <disp-formula id="e9">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>q</mml:mi>
                                <mml:mi mathvariant="italic">ij</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mo>Pr</mml:mo>
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mi>X</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi>t</mml:mi>
                                    <mml:mo>+</mml:mo>
                                    <mml:mn>1</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo>=</mml:mo>
                                <mml:mi>j</mml:mi>
                                <mml:mo>|</mml:mo>
                                <mml:mi>X</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi>t</mml:mi>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo>=</mml:mo>
                                <mml:mi>i</mml:mi>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                            <mml:mo>,</mml:mo>
                            <mml:mi>i</mml:mi>
                            <mml:mo>&#x2260;</mml:mo>
                            <mml:mi>j</mml:mi>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</disp-formula>
</p>
                <p>The self-transition 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>q</mml:mi>
                                <mml:mi mathvariant="italic">ii</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> represents the probability that a promotion remains in the same configuration for an additional week. Empirically estimating these probabilities across weeks yields the transition sub-matrix 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msup>
                                <mml:mi>Q</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msup>
                        </mml:math>
</inline-formula> that governs pretermination behavior.
                    <sup>
                        <xref ref-type="bibr" rid="ref3">3</xref>
                    </sup>
                </p>
            </sec>
            <sec id="sec16">
                <title>Interpretation of transitions</title>
                <p>

                    <list list-type="bullet">
                        <list-item>
                            <label>&#x2022;</label>
                            <p>TPR &#x2192; Feature/Display: escalation from price-only tactics toward awareness-building mechanisms.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>Feature + Display &#x2192; End: termination following a high-intensity promotional phase.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>Self-loops 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>q</mml:mi>
                                            <mml:mi mathvariant="italic">ii</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula>: persistence of the same promotional mode (e.g., consecutive display weeks).</p>
                        </list-item>
                    </list>
                </p>
                <p>These transitions shape both the persistence probability and the conditional composition vector 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>m</mml:mi>
                        </mml:math>
</inline-formula> in the quasi-stationary regime.</p>
            </sec>
            <sec id="sec17">
                <title>Empirical transition example</title>
                <p>The empirical transition matrix is estimated as the proportion of weeks in which a promotion moved from state 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>i</mml:mi>
                        </mml:math>
</inline-formula> to 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>j</mml:mi>
                        </mml:math>
</inline-formula> in the simulated 104-week dataset:

                    <disp-formula id="e10">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mover accent="true">
                                    <mml:mi>q</mml:mi>
                                    <mml:mo>^</mml:mo>
                                </mml:mover>
                                <mml:mi mathvariant="italic">ij</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mfrac>
                                <mml:mrow>
                                    <mml:mspace width="0.25em"/>
                                    <mml:mtext>Number of transitions from</mml:mtext>
                                    <mml:mspace width="0.25em"/>
                                    <mml:mi>i</mml:mi>
                                    <mml:mspace width="0.25em"/>
                                    <mml:mtext>to</mml:mtext>
                                    <mml:mspace width="0.25em"/>
                                    <mml:mi>j</mml:mi>
                                </mml:mrow>
                                <mml:mrow>
                                    <mml:mspace width="0.25em"/>
                                    <mml:mtext>Total transitions from</mml:mtext>
                                    <mml:mspace width="0.25em"/>
                                    <mml:mi>i</mml:mi>
                                </mml:mrow>
                            </mml:mfrac>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</disp-formula>
</p>
                <p>The resulting matrix 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msup>
                                <mml:mi>Q</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msup>
                        </mml:math>
</inline-formula> is row-sub-stochastic: each row sums to less than one, with the remainder representing transition to the absorbing &#x201c;End&#x201d; state.
                    <sup>
                        <xref ref-type="bibr" rid="ref6">6</xref>
                    </sup> These probabilities feed directly into the eigenvalue decomposition used to derive (
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>m</mml:mi>
                            <mml:mo>,</mml:mo>
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula>), as discussed in Section.</p>
                <p>A visual representation of week-to-week transitions among promotional mechanics is shown in 
                    <xref ref-type="fig" rid="f4">
Figure 4</xref>. An illustrative set of weekly transition probabilities is provided in 
                    <xref ref-type="table" rid="T4">
Table 4</xref>.</p>
                <fig fig-type="figure" id="f4" orientation="portrait" position="float">
                    <label>
Figure 4. </label>
                    <caption>
                        <title>Week-to-week transition flow of promotion states.</title>
                        <p>The figure illustrates the probabilistic transitions between promotion mechanics (TPR, Feature, Display, and Feature + Display) and convergence to the absorbing end state over time.</p>
                    </caption>
                    <graphic id="gr4" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/193700/edc2a1b8-112b-4c73-88d7-88857277c55d_figure4.gif"/>
                </fig>
                <table-wrap id="T4" orientation="portrait" position="float">
                    <label>
Table 4. </label>
                    <caption>
                        <title>Example weekly transition probabilities (Retailer-UPC level).</title>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">From 
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mo>&#x2192;</mml:mo>
                                        </mml:math>
</inline-formula> To</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">TPR</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Feature</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Display</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">F+D</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">
End</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">TPR</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.55</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.10</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.10</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.10</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.15</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Feature</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.15</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.40</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.10</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.15</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.20</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Display</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.10</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.15</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.45</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.10</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.20</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Feature 
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mo mathvariant="bold">+</mml:mo>
                                        </mml:math>
</inline-formula>Display</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.10</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.10</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.20</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.50</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.10</td>
                            </tr>
                        </tbody>
                    </table>
                    <table-wrap-foot>
                        <p>The table shows illustrative week-to-week transition probabilities between promotion states and the absorbing end state.</p>
                    </table-wrap-foot>
                </table-wrap>
            </sec>
            <sec id="sec18">
                <title>Analytical estimation framework</title>
                <p>The quasi-stationary framework quantifies promotional persistence and the conditional composition of active promotion types. Operationally, it estimates how long a promotion remains effective before termination and the distribution of promotion mechanics during its active life.
                    <sup>
                        <xref ref-type="bibr" rid="ref1">1</xref>
                    </sup>
                </p>
                <p>Let 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msup>
                                <mml:mi>Q</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msup>
                        </mml:math>
</inline-formula> denote the sub-generator among transient states (excluding the absorbing End state). If the transition matrix among active states is written as 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msup>
                                <mml:mi>P</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msup>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:msup>
                                <mml:mi>e</mml:mi>
                                <mml:mrow>
                                    <mml:msup>
                                        <mml:mi>Q</mml:mi>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">(</mml:mo>
                                            <mml:mn>0</mml:mn>
                                            <mml:mo stretchy="true">)</mml:mo>
                                        </mml:mrow>
                                    </mml:msup>
                                    <mml:mi>t</mml:mi>
                                </mml:mrow>
                            </mml:msup>
                        </mml:math>
</inline-formula>, then the taboo survival function for a promotion starting in state 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>i</mml:mi>
                        </mml:math>
</inline-formula> is:
                    <disp-formula id="e11">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mi>S</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:munder>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mrow>
                                    <mml:mi>j</mml:mi>
                                    <mml:mo>&#x2208;</mml:mo>
                                    <mml:msup>
                                        <mml:mi>S</mml:mi>
                                        <mml:mo>&#x2032;</mml:mo>
                                    </mml:msup>
                                </mml:mrow>
                            </mml:munder>
                            <mml:mspace width="0.1em"/>
                            <mml:msubsup>
                                <mml:mi>p</mml:mi>
                                <mml:mi mathvariant="italic">ij</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msubsup>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>,</mml:mo>
                            <mml:msub>
                                <mml:mi>S</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>&#x223c;</mml:mo>
                            <mml:msub>
                                <mml:mi>C</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:msup>
                                <mml:mi>e</mml:mi>
                                <mml:mrow>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mi mathvariant="italic">&#x03b1;t</mml:mi>
                                </mml:mrow>
                            </mml:msup>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</disp-formula>
</p>
                <p>The exponential decay implies that the probability of a promotion still being active declines at rate 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula>, the dominant eigenvalue of 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msup>
                                <mml:mi>Q</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msup>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</inline-formula>
                    <sup>
                        <xref ref-type="bibr" rid="ref3">3</xref>
                    </sup> The corresponding left eigenvector 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>m</mml:mi>
                        </mml:math>
</inline-formula> defines the quasi-stationary distribution:
                    <disp-formula id="e12">

                        <mml:math display="block">
                            <mml:mi>m</mml:mi>
                            <mml:msup>
                                <mml:mi>Q</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msup>
                            <mml:mo>=</mml:mo>
                            <mml:mo>&#x2212;</mml:mo>
                            <mml:mi mathvariant="italic">&#x03b1;m</mml:mi>
                            <mml:mo>,</mml:mo>
                            <mml:munder>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mi>i</mml:mi>
                            </mml:munder>
                            <mml:mspace width="0.1em"/>
                            <mml:msub>
                                <mml:mi>m</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mn>1</mml:mn>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</disp-formula>
</p>
                <p>The expected duration of promotional effectiveness follows:
                    <disp-formula id="e13">

                        <mml:math display="block">
                            <mml:mi>E</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mi>T</mml:mi>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:mfrac>
                                <mml:mn>1</mml:mn>
                                <mml:mi>&#x03b1;</mml:mi>
                            </mml:mfrac>
                        </mml:math>
</disp-formula>
                </p>
                <p>As shown earlier in 
                    <xref ref-type="fig" rid="f3">Figure 3</xref>, this structure captures how promotions transition among mechanics before eventual termination.</p>
            </sec>
            <sec id="sec19">
                <title>Eigenvalue and spectral characterization</title>
                <p>Let 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>&#x03bb;</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                            <mml:mo>,</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03bb;</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                            <mml:mo>,</mml:mo>
                            <mml:mo>&#x2026;</mml:mo>
                            <mml:mo>,</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03bb;</mml:mi>
                                <mml:mi>n</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> denote the eigenvalues of 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msup>
                                <mml:mi>Q</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msup>
                        </mml:math>
</inline-formula>, ordered such that:
                    <disp-formula id="e14">

                        <mml:math display="block">
                            <mml:mi mathvariant="fraktur">R</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>&#x03bb;</mml:mi>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo mathvariant="fraktur">&gt;</mml:mo>
                            <mml:mi mathvariant="fraktur">R</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>&#x03bb;</mml:mi>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo mathvariant="fraktur">&#x2265;</mml:mo>
                            <mml:mo mathvariant="fraktur">&#x22ef;</mml:mo>
                            <mml:mo mathvariant="fraktur">&#x2265;</mml:mo>
                            <mml:mi mathvariant="fraktur">R</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:msub>
                                    <mml:mi>&#x03bb;</mml:mi>
                                    <mml:mi>n</mml:mi>
                                </mml:msub>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</disp-formula>
                </p>
                <p>The principal eigenvalue 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>&#x03bb;</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mo>&#x2212;</mml:mo>
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula> determines the slowest decaying component of the process and governs long-term survival behavior.
                    <sup>
                        <xref ref-type="bibr" rid="ref3">3</xref>,
                        <xref ref-type="bibr" rid="ref5">5</xref>,
                        <xref ref-type="bibr" rid="ref6">6</xref>
                    </sup> The decay rate may be characterized through the functional determinant:
                    <disp-formula id="e15">

                        <mml:math display="block">
                            <mml:mrow>
                                <mml:mo>|</mml:mo>
                                <mml:mi>I</mml:mi>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:msub>
                                    <mml:mi>G</mml:mi>
                                    <mml:mi>&#x03b1;</mml:mi>
                                </mml:msub>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mi>p</mml:mi>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                                <mml:mo>|</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:mn>0</mml:mn>
                        </mml:math>
</disp-formula>which identifies the dominant root associated with promotional decay.
                    <sup>
                        <xref ref-type="bibr" rid="ref7">7</xref>
                    </sup>
                </p>
            </sec>
        </sec>
        <sec id="sec20">
            <title>Computational estimation</title>
            <p>The empirical estimation procedure proceeds as follows:
                <list list-type="order">
                    <list-item>
                        <label>1.</label>
                        <p>Construct the empirical 
                            <inline-formula>

                                <mml:math display="inline">
                                    <mml:msup>
                                        <mml:mi>Q</mml:mi>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">(</mml:mo>
                                            <mml:mn>0</mml:mn>
                                            <mml:mo stretchy="true">)</mml:mo>
                                        </mml:mrow>
                                    </mml:msup>
                                </mml:math>
</inline-formula> from observed week-to-week transitions among active promotions.</p>
                    </list-item>
                    <list-item>
                        <label>2.</label>
                        <p>Compute eigenvalues and corresponding left eigenvectors of 
                            <inline-formula>

                                <mml:math display="inline">
                                    <mml:msup>
                                        <mml:mi>Q</mml:mi>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">(</mml:mo>
                                            <mml:mn>0</mml:mn>
                                            <mml:mo stretchy="true">)</mml:mo>
                                        </mml:mrow>
                                    </mml:msup>
                                </mml:math>
</inline-formula>.</p>
                    </list-item>
                    <list-item>
                        <label>3.</label>
                        <p>Identify 
                            <inline-formula>

                                <mml:math display="inline">
                                    <mml:mi>&#x03b1;</mml:mi>
                                </mml:math>
</inline-formula> as the principal decay rate (smallest magnitude real eigenvalue).</p>
                    </list-item>
                    <list-item>
                        <label>4.</label>
                        <p>Normalize the associated left eigenvector to obtain the quasi-stationary distribution 
                            <inline-formula>

                                <mml:math display="inline">
                                    <mml:mi>m</mml:mi>
                                </mml:math>
</inline-formula>.</p>
                    </list-item>
                </list>
            </p>
            <p>This procedure allows scalable estimation at the UPC, brand, or category level, enabling continuous monitoring of promotional persistence patterns.
                <sup>
                    <xref ref-type="bibr" rid="ref12">12</xref>
                </sup>
            </p>
            <p>The corresponding eigenvalue spectrum that guides the identification of the dominant decay rate 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>&#x03b1;</mml:mi>
                    </mml:math>
</inline-formula> is shown in 
                <xref ref-type="fig" rid="f5">
Figure 5</xref>.</p>
            <fig fig-type="figure" id="f5" orientation="portrait" position="float">
                <label>
Figure 5. </label>
                <caption>
                    <title>Eigenvalue spectrum and analytical estimation framework.</title>
                    <p>The figure shows the eigenvalue spectrum of the transition matrix, highlighting the principal eigenvalue used to estimate the dominant decay rate, along with the analytical workflow for deriving promotion lifespan and quasi-stationary state composition.</p>
                </caption>
                <graphic id="gr5" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/193700/edc2a1b8-112b-4c73-88d7-88857277c55d_figure5.gif"/>
            </fig>
            <p>As summarized in 
                <xref ref-type="table" rid="T5">
Table 5</xref>, the decay rate and QSD composition vary across categories, reflecting differences in promotional strategy and consumer response.</p>
            <table-wrap id="T5" orientation="portrait" position="float">
                <label>
Table 5. </label>
                <caption>
                    <title>Summary of estimated quasi-stationary parameters across categories (illustrative).</title>
                </caption>
                <table content-type="article-table" frame="hsides">
                    <thead>
                        <tr>
                            <th align="left" colspan="1" rowspan="1" valign="top">Category</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>&#x03b1;</mml:mi>
                                    </mml:math>
</inline-formula>
</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>E</mml:mi>
                                        <mml:mrow>
                                            <mml:mo stretchy="true">[</mml:mo>
                                            <mml:mi>T</mml:mi>
                                            <mml:mo stretchy="true">]</mml:mo>
                                        </mml:mrow>
                                        <mml:mo>=</mml:mo>
                                        <mml:mn>1</mml:mn>
                                        <mml:mo>/</mml:mo>
                                        <mml:mi>&#x03b1;</mml:mi>
                                    </mml:math>
</inline-formula> (wks)</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">
Dominant 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>m</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula>
</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Beverages</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.12</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">8.33</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Feature + Display</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Dairy</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.14</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">7.14</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">Feature</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Household</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.23</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">4.35</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">TPR</td>
                        </tr>
                    </tbody>
                </table>
                <table-wrap-foot>
                    <p>The table reports estimated decay rates, expected promotion lifetimes, and dominant promotion mechanics by category.</p>
                </table-wrap-foot>
            </table-wrap>
            <sec id="sec21">
                <title>Empirical applications</title>
                <p>We estimate (
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>m</mml:mi>
                            <mml:mo>,</mml:mo>
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula>) using simulated multi-category promotional data. Each category reflects distinct dynamics in promotional persistence, decay rate, and conditional state composition.
                    <sup>
                        <xref ref-type="bibr" rid="ref1">1</xref>
                    </sup>
                </p>
            </sec>
            <sec id="sec22">
                <title>Category-level parameter estimation</title>
                <p>Weekly UPC-retailer promotional histories are used to construct the empirical transition sub-generator 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msup>
                                <mml:mi>Q</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msup>
                        </mml:math>
</inline-formula>. Eigenvalue decomposition produces the decay rate 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula> and the quasi-stationary composition vector 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>m</mml:mi>
                        </mml:math>
</inline-formula>. The probability that a promotion remains active after 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>t</mml:mi>
                        </mml:math>
</inline-formula> weeks is given by the survival function in (14):
                    <disp-formula id="e16">

                        <mml:math display="block">
                            <mml:mi>S</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:msup>
                                <mml:mi>e</mml:mi>
                                <mml:mrow>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mi mathvariant="italic">&#x03b1;t</mml:mi>
                                </mml:mrow>
                            </mml:msup>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</disp-formula>
</p>
                <p>The associated expected promotional lifespan is 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>E</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mi>T</mml:mi>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:mn>1</mml:mn>
                            <mml:mo>/</mml:mo>
                            <mml:mi>&#x03b1;</mml:mi>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</inline-formula>
                    <sup>
                        <xref ref-type="bibr" rid="ref3">3</xref>
                    </sup>
                </p>
            </sec>
            <sec id="sec23">
                <title>Interpretation across categories</title>
                <p>Feature + Display typically exhibits the lowest decay rate 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula> (longer promotional persistence), TPR is moderate, and Display-only often yields higher 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula> values (faster decay). Categories such as beverages and dairy show long-lived promotional cycles, while certain household categories exhibit more rapid decline.
                    <sup>
                        <xref ref-type="bibr" rid="ref12">12</xref>
                    </sup>
                </p>
            </sec>
            <sec id="sec24">
                <title>Managerial insights</title>
                <p>The decay rate 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula> supports decisions on optimal promotion duration. Campaigns with small 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula> benefit from extended runs, whereas campaigns with large 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula> are best rotated or terminated quickly. The QSD vector 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>m</mml:mi>
                        </mml:math>
</inline-formula> provides tactical allocation weights for funding promotion types that sustain conditional lift.</p>
                <p>The decay profile and corresponding survival function are illustrated in 
                    <xref ref-type="fig" rid="f6">
Figure 6</xref>.</p>
                <fig fig-type="figure" id="f6" orientation="portrait" position="float">
                    <label>
Figure 6. </label>
                    <caption>
                        <title>Promotion decay curve and survival function.</title>
                        <p>The figure shows the exponential survival function 
                            <inline-formula>

                                <mml:math display="inline">
                                    <mml:mi>S</mml:mi>
                                    <mml:mrow>
                                        <mml:mo stretchy="true">(</mml:mo>
                                        <mml:mi>t</mml:mi>
                                        <mml:mo stretchy="true">)</mml:mo>
                                    </mml:mrow>
                                    <mml:mo>=</mml:mo>
                                    <mml:msup>
                                        <mml:mi>e</mml:mi>
                                        <mml:mrow>
                                            <mml:mo>&#x2212;</mml:mo>
                                            <mml:mi>&#x03b1;</mml:mi>
                                            <mml:mi>t</mml:mi>
                                        </mml:mrow>
                                    </mml:msup>
                                </mml:math>
</inline-formula>, illustrating the probability that a promotion remains active over time and the associated half-life determined by the decay rate 
                            <inline-formula>

                                <mml:math display="inline">
                                    <mml:mi mathvariant="normal">&#x03b1;</mml:mi>
                                </mml:math>
</inline-formula>.</p>
                    </caption>
                    <graphic id="gr6" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/193700/edc2a1b8-112b-4c73-88d7-88857277c55d_figure6.gif"/>
                </fig>
                <p>
                    <xref ref-type="table" rid="T6">
Table 6</xref> summarizes estimated parameters across representative categories.</p>
                <table-wrap id="T6" orientation="portrait" position="float">
                    <label>
Table 6. </label>
                    <caption>
                        <title>Summary of estimated quasi-stationary parameters across CPG categories (illustrative).</title>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">CategoryDom. Type</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Decay 
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi>&#x03b1;</mml:mi>
                                        </mml:math>
</inline-formula>
</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Life 
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mn>1</mml:mn>
                                            <mml:mo>/</mml:mo>
                                            <mml:mi>&#x03b1;</mml:mi>
                                        </mml:math>
</inline-formula>
</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">
Conditional Mix 
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi>m</mml:mi>
                                        </mml:math>
</inline-formula>
</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">BeveragesF+D</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.14</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">7.1</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">(0.18, 0.22, 0.25, 0.35)</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Snacks</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.22</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">4.5</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">(0.30, 0.40, 0.20, 0.10)</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Personal TPR Care</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.18</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">5.6</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">(0.35, 0.25, 0.20, 0.20)</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Househol&#x0110;isplay</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.26</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">3.8</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">(0.20, 0.15, 0.45, 0.20)</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">Dairy</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.12</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">8.3</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">(0.15, 0.25, 0.25, 0.35)</td>
                            </tr>
                        </tbody>
                    </table>
                    <table-wrap-foot>
                        <p>This table summarizes decay rates, expected lifetimes, and conditional promotion mix for representative CPG categories.</p>
                    </table-wrap-foot>
                </table-wrap>
            </sec>
            <sec id="sec25">
                <title>Experimental validation</title>
                <p>We construct a 104-week simulated UPC-retailer dataset with weekly transitions among TPR, Feature, Display, Feature + Display, and the absorbing End state. This controlled environment enables validation of the quasi-stationary estimation of 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>m</mml:mi>
                                <mml:mo>,</mml:mo>
                                <mml:mi>&#x03b1;</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                        </mml:math>
</inline-formula>.</p>
            </sec>
            <sec id="sec26">
                <title>Dataset and simulation structure</title>
                <p>Each weekly observation includes promotional state and sales. Transitions follow a predefined matrix ensuring eventual absorption, emulating real-world cycles in which lift diminishes after repeated exposure.
                    <sup>
                        <xref ref-type="bibr" rid="ref1">1</xref>
                    </sup> A subset of the simulated 104-week promotional dataset is shown in 
                    <xref ref-type="table" rid="T7">
Table 7</xref>.</p>
                <table-wrap id="T7" orientation="portrait" position="float">
                    <label>
Table 7. </label>
                    <caption>
                        <title>Sample data excerpt from 104-week simulation (promo_data.csv).</title>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">Week</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Promo state</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">
Sales (Units)</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">1</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Feature</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">298.3</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">2</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Display</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">274.6</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">3</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Feature + Display</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">369.9</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">4</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Feature + Display</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">392.5</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">5</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Feature</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">312.4</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">6</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Display</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">281.7</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">7</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">TPR</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">265.8</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">8</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">TPR</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">254.2</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">9</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Feature + Display</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">401.3</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">10</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">End</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">190.7</td>
                            </tr>
                        </tbody>
                    </table>
                    <table-wrap-foot>
                        <p>The table shows an example sequence of promotion states and corresponding weekly sales used for model estimation.</p>
                    </table-wrap-foot>
                </table-wrap>
            </sec>
            <sec id="sec27">
                <title>Estimating transition matrix and parameters</title>
                <p>Let 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>n</mml:mi>
                                <mml:mi mathvariant="italic">ij</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula> denote transitions from state 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>i</mml:mi>
                        </mml:math>
</inline-formula> to 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>j</mml:mi>
                        </mml:math>
</inline-formula>. The empirical transition probabilities are estimated as:
                    <disp-formula id="e17">

                        <mml:math display="block">
                            <mml:msub>
                                <mml:mover accent="true">
                                    <mml:mi>q</mml:mi>
                                    <mml:mo>^</mml:mo>
                                </mml:mover>
                                <mml:mi mathvariant="italic">ij</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mfrac>
                                <mml:msub>
                                    <mml:mi>n</mml:mi>
                                    <mml:mi mathvariant="italic">ij</mml:mi>
                                </mml:msub>
                                <mml:mrow>
                                    <mml:msub>
                                        <mml:mo>&#x2211;</mml:mo>
                                        <mml:mrow>
                                            <mml:mi>j</mml:mi>
                                            <mml:mo>&#x2208;</mml:mo>
                                            <mml:msup>
                                                <mml:mi>S</mml:mi>
                                                <mml:mo>&#x2032;</mml:mo>
                                            </mml:msup>
                                        </mml:mrow>
                                    </mml:msub>
                                    <mml:mspace width="0.1em"/>
                                    <mml:mspace width="0.1em"/>
                                    <mml:msub>
                                        <mml:mi>n</mml:mi>
                                        <mml:mi mathvariant="italic">ij</mml:mi>
                                    </mml:msub>
                                </mml:mrow>
                            </mml:mfrac>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</disp-formula>
                </p>
                <p>The quasi-stationary parameters follow from the eigen-decomposition:
                    <disp-formula id="e18">

                        <mml:math display="block">
                            <mml:mi>m</mml:mi>
                            <mml:msup>
                                <mml:mi>Q</mml:mi>
                                <mml:mrow>
                                    <mml:mo stretchy="true">(</mml:mo>
                                    <mml:mn>0</mml:mn>
                                    <mml:mo stretchy="true">)</mml:mo>
                                </mml:mrow>
                            </mml:msup>
                            <mml:mo>=</mml:mo>
                            <mml:mo>&#x2212;</mml:mo>
                            <mml:mi mathvariant="italic">&#x03b1;m</mml:mi>
                            <mml:mo>,</mml:mo>
                            <mml:munder>
                                <mml:mo>&#x2211;</mml:mo>
                                <mml:mi>i</mml:mi>
                            </mml:munder>
                            <mml:mspace width="0.1em"/>
                            <mml:msub>
                                <mml:mi>m</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                            <mml:mo>=</mml:mo>
                            <mml:mn>1</mml:mn>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</disp-formula>
</p>
            </sec>
        </sec>
        <sec id="sec28" sec-type="results">
            <title>Results</title>
            <p>
                <xref ref-type="table" rid="T8">
Table 8</xref> shows strong persistence in Feature + Display (0.50) and TPR (0.56), indicating durable campaigns. Feature and Display rotate more frequently through awareness-driven transitions (0.16-0.22).</p>
            <table-wrap id="T8" orientation="portrait" position="float">
                <label>
Table 8. </label>
                <caption>
                    <title>Estimated transition matrix 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:msup>
                                    <mml:mi>Q</mml:mi>
                                    <mml:mrow>
                                        <mml:mo stretchy="true">(</mml:mo>
                                        <mml:mn>0</mml:mn>
                                        <mml:mo stretchy="true">)</mml:mo>
                                    </mml:mrow>
                                </mml:msup>
                            </mml:math>
</inline-formula> from 104-week simulated data.</title>
                </caption>
                <table content-type="article-table" frame="hsides">
                    <thead>
                        <tr>
                            <th align="left" colspan="1" rowspan="1" valign="top">From &#x2192; To</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">TPR</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">Feature</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">Display</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">
F+D</th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">TPR</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.56</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.12</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.14</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.18</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Feature</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.18</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.42</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.22</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.18</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Display</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.22</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.16</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.43</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.19</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Feature + Display</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.15</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.16</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.19</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.50</td>
                        </tr>
                    </tbody>
                </table>
                <table-wrap-foot>
                    <p>This table reports the estimated week-to-week transition probabilities among active promotion states.</p>
                </table-wrap-foot>
            </table-wrap>
            <p>The resulting quasi-stationary composition is:
                <disp-formula id="e19">

                    <mml:math display="block">
                        <mml:mtable columnalign="right" displaystyle="true">
                            <mml:mtr>
                                <mml:mtd>
                                    <mml:msub>
                                        <mml:mi>m</mml:mi>
                                        <mml:mi>TPR</mml:mi>
                                    </mml:msub>
                                </mml:mtd>
                                <mml:mtd>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>0.293</mml:mn>
                                    <mml:mo>,</mml:mo>
                                </mml:mtd>
                            </mml:mtr>
                            <mml:mtr>
                                <mml:mtd>
                                    <mml:msub>
                                        <mml:mi>m</mml:mi>
                                        <mml:mtext>Feature</mml:mtext>
                                    </mml:msub>
                                </mml:mtd>
                                <mml:mtd>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>0.200</mml:mn>
                                    <mml:mo>,</mml:mo>
                                </mml:mtd>
                            </mml:mtr>
                            <mml:mtr>
                                <mml:mtd>
                                    <mml:msub>
                                        <mml:mi>m</mml:mi>
                                        <mml:mtext>Display</mml:mtext>
                                    </mml:msub>
                                </mml:mtd>
                                <mml:mtd>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>0.239</mml:mn>
                                    <mml:mo>,</mml:mo>
                                </mml:mtd>
                            </mml:mtr>
                            <mml:mtr>
                                <mml:mtd>
                                    <mml:msub>
                                        <mml:mi>m</mml:mi>
                                        <mml:mrow>
                                            <mml:mi mathvariant="normal">F</mml:mi>
                                            <mml:mo>+</mml:mo>
                                            <mml:mtext>Display</mml:mtext>
                                        </mml:mrow>
                                    </mml:msub>
                                </mml:mtd>
                                <mml:mtd>
                                    <mml:mo>=</mml:mo>
                                    <mml:mn>0.268</mml:mn>
                                    <mml:mo>.</mml:mo>
                                </mml:mtd>
                            </mml:mtr>
                        </mml:mtable>
                    </mml:math>
</disp-formula>
</p>
            <p>The resulting quasi-stationary composition vector is summarized in 
                <xref ref-type="table" rid="T9">
Table 9</xref>.</p>
            <table-wrap id="T9" orientation="portrait" position="float">
                <label>
Table 9. </label>
                <caption>
                    <title>Quasi-stationary composition 
                        <inline-formula>

                            <mml:math display="inline">
                                <mml:mi>m</mml:mi>
                            </mml:math>
</inline-formula> derived from 
                        <xref ref-type="table" rid="T8">
Table 8</xref>.</title>
                </caption>
                <table content-type="article-table" frame="hsides">
                    <thead>
                        <tr>
                            <th align="left" colspan="1" rowspan="1" valign="top">State</th>
                            <th align="left" colspan="1" rowspan="1" valign="top">
m
                                <sub>

                                    <italic toggle="yes">i</italic>
                                </sub>
                            </th>
                        </tr>
                    </thead>
                    <tbody>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">TPR</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.293</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Feature</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.200</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Display</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.239</td>
                        </tr>
                        <tr>
                            <td align="left" colspan="1" rowspan="1" valign="top">Feature + Display</td>
                            <td align="left" colspan="1" rowspan="1" valign="top">0.268</td>
                        </tr>
                    </tbody>
                </table>
                <table-wrap-foot>
                    <p>The table presents the conditional distribution of promotion states while the promotion remains active.</p>
                </table-wrap-foot>
            </table-wrap>
            <sec id="sec29">
                <title>Survival function and diagnostics</title>
                <p>The survival curve follows:
                    <disp-formula id="e20">

                        <mml:math display="block">
                            <mml:mi>S</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">(</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="true">)</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:mo>Pr</mml:mo>
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mi>T</mml:mi>
                                <mml:mo>&gt;</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:msup>
                                <mml:mi>e</mml:mi>
                                <mml:mrow>
                                    <mml:mo>&#x2212;</mml:mo>
                                    <mml:mi mathvariant="italic">&#x03b1;t</mml:mi>
                                </mml:mrow>
                            </mml:msup>
                            <mml:mo>.</mml:mo>
                        </mml:math>
</disp-formula>
</p>
                <p>The corresponding empirical survival curve and its fitted exponential decay are shown in 
                    <xref ref-type="fig" rid="f7">
Figure 7</xref>.</p>
                <fig fig-type="figure" id="f7" orientation="portrait" position="float">
                    <label>
Figure 7. </label>
                    <caption>
                        <title>Promotion survival curve with empirical and fitted decay.</title>
                        <p>The figure compares the empirical promotion survival trajectory with the fitted exponential decay function 
                            <inline-formula>

                                <mml:math display="inline">
                                    <mml:mi>S</mml:mi>
                                    <mml:mrow>
                                        <mml:mo stretchy="true">(</mml:mo>
                                        <mml:mi>t</mml:mi>
                                        <mml:mo stretchy="true">)</mml:mo>
                                    </mml:mrow>
                                    <mml:mo>=</mml:mo>
                                    <mml:msup>
                                        <mml:mi>e</mml:mi>
                                        <mml:mrow>
                                            <mml:mo>&#x2212;</mml:mo>
                                            <mml:mi>&#x03b1;</mml:mi>
                                            <mml:mi>t</mml:mi>
                                        </mml:mrow>
                                    </mml:msup>
                                </mml:math>
</inline-formula>, highlighting the estimated promotion half-life.</p>
                    </caption>
                    <graphic id="gr7" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/193700/edc2a1b8-112b-4c73-88d7-88857277c55d_figure7.gif"/>
                </fig>
                <p>The transition intensities across active promotion mechanics are visualized in the heatmap shown in 
                    <xref ref-type="fig" rid="f8">
Figure 8</xref>.</p>
                <fig fig-type="figure" id="f8" orientation="portrait" position="float">
                    <label>
Figure 8. </label>
                    <caption>
                        <title>Transition probability heatmap among active promotion states.</title>
                        <p>The heatmap shows estimated transition intensities between promotion mechanics (TPR, Feature, Display, and Feature + Display), illustrating the relative likelihood of movement across states during active promotions.</p>
                    </caption>
                    <graphic id="gr8" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/193700/edc2a1b8-112b-4c73-88d7-88857277c55d_figure8.gif"/>
                </fig>
            </sec>
            <sec id="sec30">
                <title>Validation</title>
                <p>Empirical-theoretical alignment validates QSD applicability for promotional persistence.
                    <sup>
                        <xref ref-type="bibr" rid="ref12">12</xref>
                    </sup> Longevity depends not only on duration but also on tactical transitions, complementing machine-learning uplift and BSTS models used in planning dashboards.</p>
            </sec>
            <sec id="sec31">
                <title>Managerial implications</title>
                <p>Translating (
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>m</mml:mi>
                            <mml:mo>,</mml:mo>
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula>) into operational decisions enables optimization of promotion duration, mechanic rotation, and return on investment (ROI).
                    <sup>
                        <xref ref-type="bibr" rid="ref1">1</xref>
                    </sup> A visual summary of these decision zones, based on the decay rate 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula>, is shown in 
                    <xref ref-type="fig" rid="f9">
Figure 9</xref>.</p>
                <fig fig-type="figure" id="f9" orientation="portrait" position="float">
                    <label>
Figure 9. </label>
                    <caption>
                        <title>Decision matrix for promotion duration versus decay rate.</title>
                        <p>The figure maps promotion duration against the estimated decay rate 
                            <inline-formula>

                                <mml:math display="inline">
                                    <mml:mi mathvariant="normal">&#x03b1;</mml:mi>
                                </mml:math>
</inline-formula>, illustrating decision regions for sustaining, rotating, or terminating promotions based on expected lifespan and ROI considerations.</p>
                    </caption>
                    <graphic id="gr9" orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/193700/edc2a1b8-112b-4c73-88d7-88857277c55d_figure9.gif"/>
                </fig>
            </sec>
            <sec id="sec32">
                <title>Strategic use of decay rate 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula>
</title>
                <p>A lower decay rate indicates longer promotional persistence.
                    <list list-type="bullet">
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>&#x03b1;</mml:mi>
                                    </mml:math>
</inline-formula> between 0.10 and 0.14: long-lived promotions.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>&#x03b1;</mml:mi>
                                    </mml:math>
</inline-formula> between 0.15 and 0.20: moderate stability; rotate mechanics.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>&#x03b1;</mml:mi>
                                    </mml:math>
</inline-formula> above 0.25: rapid decay; redesign or terminate.
                                <sup>
                                    <xref ref-type="bibr" rid="ref7">7</xref>
                                </sup>
                            </p>
                        </list-item>
                    </list>
                </p>
                <p>Even small increases in 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula> significantly reduce the expected lifespan 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>E</mml:mi>
                            <mml:mrow>
                                <mml:mo stretchy="true">[</mml:mo>
                                <mml:mi>T</mml:mi>
                                <mml:mo stretchy="true">]</mml:mo>
                            </mml:mrow>
                            <mml:mo>=</mml:mo>
                            <mml:mn>1</mml:mn>
                            <mml:mo>/</mml:mo>
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula>.</p>
            </sec>
            <sec id="sec33">
                <title>Tactical insights from 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>m</mml:mi>
                        </mml:math>
</inline-formula>
</title>
                <p>The quasi-stationary composition 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>m</mml:mi>
                        </mml:math>
</inline-formula> indicates which tactic dominates conditional effectiveness:
                    <list list-type="bullet">
                        <list-item>
                            <label>&#x2022;</label>
                            <p>High 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>m</mml:mi>
                                            <mml:mrow>
                                                <mml:mi mathvariant="normal">F</mml:mi>
                                                <mml:mo>+</mml:mo>
                                                <mml:mtext>Display</mml:mtext>
                                            </mml:mrow>
                                        </mml:msub>
                                    </mml:math>
</inline-formula>: display-sensitive categories-invest in co-located displays.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>High 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>m</mml:mi>
                                            <mml:mi>TPR</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula>: price-driven elasticity dominates.</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>Use 
                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>m</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula> to prioritize sequencing and budget allocation.</p>
                        </list-item>
                    </list>
                </p>
            </sec>
            <sec id="sec34">
                <title>Decision matrix and dashboards</title>
                <p>Decision zones include Sustain (low 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula>), Rotate (moderate), and Terminate (high).
                    <sup>
                        <xref ref-type="bibr" rid="ref12">12</xref>
                    </sup> These rules can be integrated into enterprise dashboards for stop/continue signals (based on 
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula>), expected duration (
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:mn>1</mml:mn>
                            <mml:mo>/</mml:mo>
                            <mml:mi>&#x03b1;</mml:mi>
                        </mml:math>
</inline-formula>), and mechanic mix (
                    <inline-formula>

                        <mml:math display="inline">
                            <mml:msub>
                                <mml:mi>m</mml:mi>
                                <mml:mi>i</mml:mi>
                            </mml:msub>
                        </mml:math>
</inline-formula>).</p>
                <p>A detailed summary of decision rules by decay rate, expected lifespan, and ROI implications is provided in 
                    <xref ref-type="table" rid="T10">
Table 10</xref>.</p>
                <table-wrap id="T10" orientation="portrait" position="float">
                    <label>
Table 10. </label>
                    <caption>
                        <title>Managerial insights: promotion duration, ROI, and 
                            <italic toggle="yes">&#x03b1;</italic> sensitivity.</title>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">Decay rate 
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mi>&#x03b1;</mml:mi>
                                        </mml:math>
</inline-formula>
</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Life (
                                    <inline-formula>

                                        <mml:math display="inline">
                                            <mml:mn>1</mml:mn>
                                            <mml:mo>/</mml:mo>
                                            <mml:mi>&#x03b1;</mml:mi>
                                        </mml:math>
</inline-formula>)</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Action</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Strategic insight</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">
ROI trend</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.100.14</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">7-10 weeks</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Sustain</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Strong conditional stability; maintain plan</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">High</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.150.20</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">5-6 weeks</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Rotate</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Moderate persistence; rotate between tactics</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Moderate</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.210.28</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">3-4 weeks</td>
                                <td colspan="1" rowspan="1"/>
                                <td align="left" colspan="1" rowspan="1" valign="top">Terminate Rapid decay; short-term lift only</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Declining</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">&gt; 0.28</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">&lt; 3 weeks</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Redesign</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">High fatigue; requires new strategy</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Low</td>
                            </tr>
                        </tbody>
                    </table>
                    <table-wrap-foot>
                        <p>This table summarizes decision guidelines for sustaining, rotating, terminating, or redesigning promotions based on estimated decay dynamics.</p>
                    </table-wrap-foot>
                </table-wrap>
            </sec>
            <sec id="sec35">
                <title>Integration into marketing dashboards</title>
                <p>Quasi-stationary metrics integrate naturally into enterprise analytics platforms (e.g., Circana&#x2019;s Demand Forecaster or Promo Effectiveness Dashboard). Key indicators include:
                    <list list-type="bullet">
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mi>&#x03b1;</mml:mi>
                                    </mml:math>
</inline-formula>: hazard of promotional fatigue (stop-continue signal)</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:mn>1</mml:mn>
                                        <mml:mo>/</mml:mo>
                                        <mml:mi>&#x03b1;</mml:mi>
                                    </mml:math>
</inline-formula>: expected effective weeks of lift</p>
                        </list-item>
                        <list-item>
                            <label>&#x2022;</label>
                            <p>

                                <inline-formula>

                                    <mml:math display="inline">
                                        <mml:msub>
                                            <mml:mi>m</mml:mi>
                                            <mml:mi>i</mml:mi>
                                        </mml:msub>
                                    </mml:math>
</inline-formula>: conditional probability of each promotion tactic</p>
                        </list-item>
                    </list>
                </p>
                <p>Aligning these indicators with profitability and media effectiveness enables stochastic decision optimization: a discipline that quantifies persistence, lift decay, and mechanic efficiency in a unified framework.
                    <sup>
                        <xref ref-type="bibr" rid="ref3">3</xref>,
                        <xref ref-type="bibr" rid="ref14">14</xref>
                    </sup>
                </p>
            </sec>
        </sec>
        <sec id="sec36" sec-type="conclusion">
            <title>Conclusion</title>
            <p>The eigenvalue relation 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi mathvariant="italic">mQ</mml:mi>
                        <mml:mo>=</mml:mo>
                        <mml:mo>&#x2212;</mml:mo>
                        <mml:mi mathvariant="italic">&#x03b1;m</mml:mi>
                    </mml:math>
</inline-formula> provides a unified structure for describing conditional promotional composition, persistence, and decay. It supports descriptive analysis (state evolution), predictive modeling (survival 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>S</mml:mi>
                        <mml:mrow>
                            <mml:mo stretchy="true">(</mml:mo>
                            <mml:mi>t</mml:mi>
                            <mml:mo stretchy="true">)</mml:mo>
                        </mml:mrow>
                        <mml:mo>=</mml:mo>
                        <mml:msup>
                            <mml:mi>e</mml:mi>
                            <mml:mrow>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:mi mathvariant="italic">&#x03b1;t</mml:mi>
                            </mml:mrow>
                        </mml:msup>
                    </mml:math>
</inline-formula>), and prescriptive guidance (optimal duration and rotation). A smaller 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>&#x03b1;</mml:mi>
                    </mml:math>
</inline-formula> signifies more durable promotions, while a larger 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>&#x03b1;</mml:mi>
                    </mml:math>
</inline-formula> signals rapid decay, guiding tactical allocation and execution.
                <sup>
                    <xref ref-type="bibr" rid="ref3">3</xref>,
                    <xref ref-type="bibr" rid="ref12">12</xref>
                </sup>
            </p>
            <p>Future extensions may incorporate multi-retailer heterogeneity in 
                <inline-formula>

                    <mml:math display="inline">
                        <mml:mi>&#x03b1;</mml:mi>
                    </mml:math>
</inline-formula>, competitive interactions, and transition-probability learning from large-scale scanner and loyalty datasets.</p>
        </sec>
        <sec id="sec37">
            <title>Future work</title>
            <p>Future work may extend the proposed quasi-stationary promotion framework to empirical retailer&#x2013;UPC scanner datasets to validate performance under real-world noise, seasonality, and execution constraints. Extensions to transition matrices that depend on time could capture calendar effects, promotion fatigue, and changing consumer responsiveness over time. The framework may also be generalized to competitive settings, where multiple brands interact and promotion termination depends on cross-brand dynamics. Finally, integrating quasi-stationary metrics with machine learning&#x2013;based uplift and forecasting models represents a promising direction for embedding stochastic persistence measures into operational promotion planning systems.</p>
        </sec>
        <sec id="sec38">
            <title>Ethics and consent</title>
            <p>No human subjects, private data, or biological specimens were involved.</p>
        </sec>
    </body>
    <back>
        <sec id="sec41" sec-type="data-availability">
            <title>Data availability</title>
            <p>All data used in this study are simulated and fully reproducible and are openly available.</p>
            <p>The simulated promotion dataset supporting the findings of this study is available in the GitHub repository and includes a 104-week retailer&#x2013;UPC&#x2013;level promotion history generated using the proposed quasi-stationary framework:
                <list list-type="bullet">
                    <list-item>
                        <label>&#x2022;</label>
                        <p>promo_data.csv &#x2013; simulated weekly promotion states and sales outcomes</p>
                    </list-item>
                </list>
            </p>
            <p>The dataset does not contain any proprietary, confidential, or third-party commercial data. All data are author-generated and intended solely for methodological demonstration and validation.</p>
            <p>An archived version of the dataset is available via Zenodo:</p>
            <p>Gunasekaran, V. (2025). Quasi-Stationary Dynamics of CPG Promotions &#x2013; Simulated Data and Code. Zenodo - 
                <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.5281/zenodo.17925573">https://doi.org/10.5281/zenodo.17925573</ext-link>.
                <sup>
                    <xref ref-type="bibr" rid="ref15">15</xref>
                </sup>
            </p>
            <p>Data are available under the terms of the 
                <ext-link ext-link-type="uri" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International license</ext-link> (CC-BY 4.0).</p>
        </sec>
        <sec id="sec42">
            <title>Software availability</title>
            <p>Source code available from: 
                <ext-link ext-link-type="uri" xlink:href="https://github.com/vinoalles/Quasi">https://github.com/vinoalles/Quasi</ext-link>
            </p>
            <p>Archived source code available from: 
                <ext-link ext-link-type="uri" xlink:href="https://doi.org/10.5281/zenodo.17925573">https://doi.org/10.5281/zenodo.17925573</ext-link>
            </p>
            <p>License: MIT License (OSI-approved)</p>
            <sec id="sec43">
                <title>Reporting guidelines</title>
                <p>This study does not involve clinical trials, human participants, animals, or qualitative research, and therefore does not require CONSORT, STROBE, ARRIVE, or COREQ/SRQR reporting checklists. The article follows the general reproducibility and transparency standards recommended by F1000Research for computational research.</p>
            </sec>
        </sec>
        <ack>
            <title>Acknowledgements</title>
            <p>The authors thank contributors to open-source recommender-system libraries.</p>
        </ack>
        <ref-list>
            <title>References</title>
            <ref id="ref1">
                <label>1</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Gupta</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Cooper</surname>
                            <given-names>LG</given-names>
                        </name>
</person-group>:
                    <article-title>The discounting of promotional effects in consumer markets.</article-title>
                    <source>

                        <italic toggle="yes">J. Mark. Res.</italic>
</source>
                    <year>1992</year>;<volume>29</volume>(<issue>2</issue>):<fpage>223</fpage>&#x2013;<lpage>237</lpage>.</mixed-citation>
            </ref>
            <ref id="ref2">
                <label>2</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Yaglom</surname>
                            <given-names>AM</given-names>
                        </name>
</person-group>:
                    <article-title>Certain limit theorems of the theory of branching stochastic processes.</article-title>
                    <source>

                        <italic toggle="yes">Dokl. Akad. Nauk SSSR.</italic>
</source>
                    <year>1947</year>;<volume>56</volume>:<fpage>795</fpage>&#x2013;<lpage>798</lpage>.</mixed-citation>
            </ref>
            <ref id="ref3">
                <label>3</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Darroch</surname>
                            <given-names>JN</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Seneta</surname>
                            <given-names>E</given-names>
                        </name>
</person-group>:
                    <article-title>On quasi-stationary distributions in absorbing continuous-time finite markov chains.</article-title>
                    <source>

                        <italic toggle="yes">J. Appl. Probab.</italic>
</source>
                    <year>1965</year>;<volume>2</volume>(<issue>1</issue>):<fpage>88</fpage>&#x2013;<lpage>100</lpage>.
                    <pub-id pub-id-type="doi">10.2307/3211876</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref4">
                <label>4</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Philip</surname>
                            <given-names>K</given-names>
                        </name>
</person-group>:
                    <article-title>Pollett. Quasi-stationary distributions.</article-title>
                    <source>

                        <italic toggle="yes">Probab. Surv.</italic>
</source>
                    <year>2015</year>;<volume>12</volume>:<fpage>1</fpage>&#x2013;<lpage>35</lpage>.</mixed-citation>
            </ref>
            <ref id="ref5">
                <label>5</label>
                <mixed-citation publication-type="book">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Collet</surname>
                            <given-names>P</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Mart&#x00ed;nez</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Mart&#x00ed;n</surname>
                            <given-names>JS</given-names>
                        </name>
</person-group>:
                    <source>

                        <italic toggle="yes">Quasi-Stationary Distributions: Markov Chains, Diffusions and Dynamical Systems.</italic>
</source>
                    <publisher-loc>Berlin</publisher-loc>:
                    <publisher-name>Springer</publisher-name>;<year>2013</year>.</mixed-citation>
            </ref>
            <ref id="ref6">
                <label>6</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Kingman</surname>
                            <given-names>JFC</given-names>
                        </name>
</person-group>:
                    <article-title>On the algebra of queues and the spectral theory of markov chains.</article-title>
                    <source>

                        <italic toggle="yes">J. Appl. Probab.</italic>
</source>
                    <year>1963</year>;<volume>1</volume>(<issue>2</issue>):<fpage>252</fpage>&#x2013;<lpage>282</lpage>.</mixed-citation>
            </ref>
            <ref id="ref7">
                <label>7</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Pakes</surname>
                            <given-names>AG</given-names>
                        </name>
</person-group>:
                    <article-title>Some limit theorems for markov chains with applications to population theory.</article-title>
                    <source>

                        <italic toggle="yes">Adv. Appl. Probab.</italic>
</source>
                    <year>1973</year>;<volume>5</volume>:<fpage>68</fpage>&#x2013;<lpage>95</lpage>.</mixed-citation>
            </ref>
            <ref id="ref8">
                <label>8</label>
                <mixed-citation publication-type="book">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Bartlett</surname>
                            <given-names>MS</given-names>
                        </name>
</person-group>:
                    <source>

                        <italic toggle="yes">An Introduction to Stochastic Processes with Special Reference to Methods and Applications.</italic>
</source>
                    <publisher-loc>Cambridge</publisher-loc>:
                    <publisher-name>Cambridge University Press</publisher-name>;<year>1955</year>.</mixed-citation>
            </ref>
            <ref id="ref9">
                <label>9</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Pollett</surname>
                            <given-names>PK</given-names>
                        </name>
</person-group>:
                    <article-title>Quasi-stationary distributions: A bibliography.</article-title>
                    <source>

                        <italic toggle="yes">Electron. J. Probab.</italic>
</source>
                    <year>2001</year>;<volume>6</volume>:<fpage>1</fpage>&#x2013;<lpage>33</lpage>.</mixed-citation>
            </ref>
            <ref id="ref10">
                <label>10</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Van Doorn</surname>
                            <given-names>EA</given-names>
                        </name>
</person-group>:
                    <article-title>Quasi-stationary distributions and convergence to quasi-stationarity.</article-title>
                    <source>

                        <italic toggle="yes">J. Appl. Probab.</italic>
</source>
                    <year>2013</year>;<volume>50</volume>(<issue>4</issue>):<fpage>1038</fpage>&#x2013;<lpage>1056</lpage>.</mixed-citation>
            </ref>
            <ref id="ref11">
                <label>11</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Vere-Jones</surname>
                            <given-names>D</given-names>
                        </name>
</person-group>:
                    <article-title>Some limit theorems for evanescent processes.</article-title>
                    <source>

                        <italic toggle="yes">J. Appl. Probab.</italic>
</source>
                    <year>1969</year>;<volume>11</volume>(<issue>2</issue>):<fpage>67</fpage>&#x2013;<lpage>78</lpage>.
                    <pub-id pub-id-type="doi">10.1111/j.1467-842X.1969.tb00300.x</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref12">
                <label>12</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Van Doorn</surname>
                            <given-names>EA</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Schrijner</surname>
                            <given-names>P</given-names>
                        </name>
</person-group>:
                    <article-title>Quasi-stationary distributions for discrete-time markov chains.</article-title>
                    <source>

                        <italic toggle="yes">Adv. Appl. Probab.</italic>
</source>
                    <year>1994</year>;<volume>26</volume>(<issue>3</issue>):<fpage>706</fpage>&#x2013;<lpage>720</lpage>.</mixed-citation>
            </ref>
            <ref id="ref13">
                <label>13</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>M&#x00e9;l&#x00e9;ard</surname>
                            <given-names>S</given-names>
                        </name>

                        <name name-style="western">
                            <surname>Villemonais</surname>
                            <given-names>D</given-names>
                        </name>
</person-group>:
                    <article-title>Quasi-stationary distributions and population processes.</article-title>
                    <source>

                        <italic toggle="yes">Probab. Surv.</italic>
</source>
                    <year>2012</year>;<volume>9</volume>:<fpage>340</fpage>&#x2013;<lpage>410</lpage>.
                    <pub-id pub-id-type="doi">10.1214/11-PS191</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref14">
                <label>14</label>
                <mixed-citation publication-type="book">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Puterman</surname>
                            <given-names>ML</given-names>
                        </name>
</person-group>:
                    <source>

                        <italic toggle="yes">Markov Decision Processes: Discrete Stochastic Dynamic Programming.</italic>
</source>
                    <publisher-loc>New York</publisher-loc>:
                    <publisher-name>John Wiley &amp; Sons</publisher-name>;<year>1994</year>.</mixed-citation>
            </ref>
            <ref id="ref15">
                <label>15</label>
                <mixed-citation publication-type="other">
                    <person-group person-group-type="author">

                        <name name-style="western">
                            <surname>Gunasekaran</surname>
                            <given-names>V</given-names>
                        </name>
</person-group>:
                    <article-title>Quasi-Stationary Dynamics of CPG Promotions: Simulated Data and Code.</article-title>
                    <source>

                        <italic toggle="yes">Zenodo.</italic>
</source>
                    <year>2025</year>.
                    <pub-id pub-id-type="doi">10.5281/zenodo.17925573</pub-id>
                </mixed-citation>
            </ref>
        </ref-list>
    </back>
    <sub-article article-type="reviewer-report" id="report454025">
        <front-stub>
            <article-id pub-id-type="doi">10.5256/f1000research.193700.r454025</article-id>
            <title-group>
                <article-title>Reviewer response for version 1</article-title>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author">
                    <name>
                        <surname>Asyraf Hasim</surname>
                        <given-names>Muhammad</given-names>
                    </name>
                    <xref ref-type="aff" rid="r454025a1">1</xref>
                    <role>Referee</role>
                </contrib>
                <aff id="r454025a1">
                    <label>1</label>Universiti Tun Hussein Onn Malaysia, Batu Pahat, Johor, Malaysia</aff>
            </contrib-group>
            <author-notes>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>11</day>
                <month>2</month>
                <year>2026</year>
            </pub-date>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2026 Asyraf Hasim M</copyright-statement>
                <copyright-year>2026</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access peer review report distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
                <license>
                    <license-p>The author(s) is/are employees of the US Government and therefore domestic copyright protection in USA does not apply to this work. The work may be protected under the copyright laws of other jurisdictions when used in those jurisdictions.</license-p>
                </license>
            </permissions>
            <related-article ext-link-type="doi" id="relatedArticleReport454025" related-article-type="peer-reviewed-article" xlink:href="10.12688/f1000research.175696.1"/>
            <custom-meta-group>
                <custom-meta>
                    <meta-name>recommendation</meta-name>
                    <meta-value>approve-with-reservations</meta-value>
                </custom-meta>
            </custom-meta-group>
        </front-stub>
        <body>
            <p>This article presents a novel, conceptually strong, and technically sound methodological contribution by introducing a quasi-stationary distribution (QSD) framework to model the lifespan and conditional effectiveness of marketing promotions. The theoretical grounding in stochastic processes is rigorous, the modelling choices are appropriate, and the framework offers interpretable parameters with clear managerial relevance. The open availability of simulated data and code further supports transparency and reproducibility.</p>
            <p> </p>
            <p> However, the study is primarily methodological and simulation-based, and several aspects require refinement before the work can be considered fully scientifically robust.</p>
            <p> </p>
            <p> First, while the foundational stochastic literature is well covered, the manuscript engages insufficiently with recent research on marketing and promotion analytics. The authors should strengthen the literature review by incorporating contemporary studies on promotion duration, fatigue, dynamic promotion effects, and alternative modelling approaches, and by clarifying more explicitly how the proposed QSD framework complements or advances existing methods.</p>
            <p> </p>
            <p> Second, although the overall methodology is clearly described, key details of the simulation design and data-generation process are not sufficiently explicit to guarantee full independent replication. Additional information on initialisation, sales generation mechanisms, and modelling assumptions should be provided, ideally in an appendix or supplementary material.</p>
            <p> </p>
            <p> Third, the statistical analysis would benefit from some assessment of uncertainty or robustness. The estimates of the decay rate (&#x03b1;) and quasi-stationary distribution (m) are treated as fixed quantities, with no sensitivity analysis or variability assessment. Incorporating simple robustness checks or clearly acknowledging this limitation is necessary.</p>
            <p> </p>
            <p> Finally, while the conclusions are generally consistent with the results, some managerial implications are stated too strongly, given that all empirical demonstrations rely on simulated data. The authors should more clearly delimit which insights are demonstrated within the simulation and which remain hypotheses for future validation using real-world scanner or retailer data.</p>
            <p> Required revisions to ensure scientific soundness 
                <list list-type="bullet">
                    <list-item>
                        <p>Update and expand the marketing analytics literature review with recent and relevant studies.</p>
                    </list-item>
                    <list-item>
                        <p>Provide clearer, more detailed documentation of the simulation and data-generation procedures.</p>
                    </list-item>
                    <list-item>
                        <p>Address parameter uncertainty through sensitivity analysis or explicit discussion of limitations.</p>
                    </list-item>
                    <list-item>
                        <p>Temper and clearly qualify conclusions and managerial claims to reflect the simulation-based nature of the study.</p>
                    </list-item>
                </list> With these revisions, the paper would constitute a solid, publishable contribution to methodological research at the intersection of stochastic modelling and marketing analytics.</p>
            <p>Is the work clearly and accurately presented and does it cite the current literature?</p>
            <p>Partly</p>
            <p>If applicable, is the statistical analysis and its interpretation appropriate?</p>
            <p>Partly</p>
            <p>Are all the source data underlying the results available to ensure full reproducibility?</p>
            <p>Yes</p>
            <p>Is the study design appropriate and is the work technically sound?</p>
            <p>Yes</p>
            <p>Are the conclusions drawn adequately supported by the results?</p>
            <p>Partly</p>
            <p>Are sufficient details of methods and analysis provided to allow replication by others?</p>
            <p>Partly</p>
            <p>Reviewer Expertise:</p>
            <p>Marketing</p>
            <p>I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard, however I have significant reservations, as outlined above.</p>
        </body>
    </sub-article>
    <sub-article article-type="reviewer-report" id="report446416">
        <front-stub>
            <article-id pub-id-type="doi">10.5256/f1000research.193700.r446416</article-id>
            <title-group>
                <article-title>Reviewer response for version 1</article-title>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author">
                    <name>
                        <surname>Chaubey</surname>
                        <given-names>Dhani Shanker</given-names>
                    </name>
                    <xref ref-type="aff" rid="r446416a1">1</xref>
                    <role>Referee</role>
                    <uri content-type="orcid">https://orcid.org/0000-0001-9336-2577</uri>
                </contrib>
                <aff id="r446416a1">
                    <label>1</label>Uttaranchal University, Dehradun, Uttarakhand, India</aff>
            </contrib-group>
            <author-notes>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>21</day>
                <month>1</month>
                <year>2026</year>
            </pub-date>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2026 Chaubey DS</copyright-statement>
                <copyright-year>2026</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access peer review report distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <related-article ext-link-type="doi" id="relatedArticleReport446416" related-article-type="peer-reviewed-article" xlink:href="10.12688/f1000research.175696.1"/>
            <custom-meta-group>
                <custom-meta>
                    <meta-name>recommendation</meta-name>
                    <meta-value>approve-with-reservations</meta-value>
                </custom-meta>
            </custom-meta-group>
        </front-stub>
        <body>
            <p>Manuscript title:
                <bold> Quasi-Stationary Promotion Modeling: Measuring the&#x00a0;</bold>
                <bold>Lifespan and Effectiveness of Marketing Promotions</bold>
            </p>
            <p> This manuscript presents a novel and conceptually rigorous framework for modeling promotional dynamics in consumer-packaged goods (CPG) markets by leveraging quasi-stationary distributions (QSDs). The study is well motivated, clearly written, and addresses an important gap in the marketing analytics literature, namely the lack of formal stochastic approaches to characterize the conditional stability and effective lifespan of transient promotional campaigns.</p>
            <p> A key strength of the paper lies in its innovative application of QSD theory to promotion modeling. Treating the termination of a promotion as an absorbing state and different promotional mechanics as transient states within a finite-state Markov process is both elegant and theoretically sound. The derivation of interpretable parameters, particularly the dominant eigenvalue (&#x03b1;) as a measure of promotional decay and its inverse as effective duration, as well as the conditional sales mix vector (m), represents a meaningful methodological contribution. These parameters have clear managerial relevance and extend beyond descriptive analytics toward decision-oriented modeling.</p>
            <p> The methodological exposition is largely clear, and the use of simulated 104-week UPC-level data is appropriate for establishing proof of concept. The results effectively demonstrate the framework&#x2019;s ability to distinguish between long-lived and rapidly decaying promotions and to capture the shifting dominance of tactics such as temporary price reductions, feature, display, and their combinations over the promotion lifecycle. The integration of stochastic theory with applied CPG decision intelligence is a notable strength. By modeling promotional dynamics through a continuous-time Markov process with an absorbing state and a quasi-stationary distribution, the manuscript offers a rigorous and theoretically sound framework grounded in established literature. Interpreting the quasi-stationary distribution as the conditional long-run mix of promotional mechanics and the decay parameter as the hazard of promotion termination is conceptually strong. However, the presentation would benefit from clearer, more intuitive explanations to improve accessibility and managerial relevance.</p>
            <p> There are several areas where the manuscript could be strengthened.</p>
            <p> While simulation-based validation is suitable for an initial methodological paper, the contribution would be significantly enhanced by either (a) a stronger justification of the simulation design (e.g., how closely it mirrors real-world CPG promotion processes) or (b) a brief empirical illustration using real scanner or panel data, even if limited in scope. This would improve the external validity and practical credibility of the framework.</p>
            <p> The &#x00a0;assumptions underlying the Markov property and time-homogeneous transition probabilities should be discussed more explicitly. Promotional dynamics in practice may be influenced by seasonality, competitive reactions, or managerial interventions, which could violate these assumptions. A short discussion of potential extensions to non-homogeneous or semi-Markov settings would be valuable.</p>
            <p> The current discussion remains largely technical. The authors should substantially expand the discussion section to translate methodological results into actionable marketing insights. Specifically:</p>
            <p> While the framework captures promotion lifespan and state dynamics, the link to &#x201c;effectiveness&#x201d; could be made clearer. The authors are encouraged to discuss how different promotion-state paths (e.g., TPR &#x2192; Feature &#x2192; Display vs. TPR &#x2192; Feature + Display &#x2192; End) may be associated with sales lift, diminishing returns, or consumer fatigue, even if such outcomes are addressed conceptually rather than empirically.</p>
            <p> Explain how the estimated quasi-stationary distribution (m) can guide managers in allocating budgets across TPR, feature, and display mechanics during the &#x201c;active life&#x201d; of a promotion.</p>
            <p> Clarify how the hazard rate &#x03b1; and expected lifespan E[T]=1/&#x03b1;E[T] = 1/\alphaE[T]=1/&#x03b1; can inform promotion planning, timing of escalation (e.g., moving from TPR to feature + display), and decisions on when to terminate or refresh campaigns.</p>
            <p> Discuss how different transition patterns (e.g., high self-loops vs. rapid escalation) reflect alternative promotional strategies and competitive intensity.</p>
            <p> While the paper emphasizes managerial implications, these could be further elaborated. For example, clearer guidance on how practitioners might use &#x03b1; and m in promotion planning, budget allocation, or real-time campaign monitoring systems would enhance the applied relevance of the study.</p>
            <p> Given the applied nature of CPG promotion modeling, the authors should more explicitly target practitioners and applied researchers. This can be achieved by:</p>
            <p> Including a brief illustrative example or hypothetical scenario showing how a brand manager might use the model outputs in practice.</p>
            <p> Summarizing key takeaways in simple bullet points (e.g., &#x201c;What does a high &#x03b1; imply?&#x201d;, &#x201c;When is Feature + Display most effective?&#x201d;).</p>
            <p> Reducing reliance on purely symbolic notation in the discussion and emphasizing verbal interpretation.</p>
            <p> Finally, minor clarifications regarding notation consistency, parameter interpretation, and the scalability of the approach to larger state spaces (e.g., multiple depth levels of TPR or overlapping promotions) would further improve readability.</p>
            <p> </p>
            <p> 
                <bold>Presentation Improvements</bold>
            </p>
            <p> Figures and tables are relevant, but their captions and in-text explanations could be more descriptive. For instance, Figure 3 should explicitly state why certain transitions are more likely or strategically meaningful. Table 3 is useful; however, adding a short paragraph explaining how practitioners might interpret these symbols collectively would improve usability.</p>
            <p> Recommendation</p>
            <p> Overall, this manuscript offers a compelling and original contribution to marketing analytics and promotion modeling. With minor revisions addressing validation, assumptions, discussion and managerial articulation, it has strong potential to advance both theory and practice in CPG promotion effectiveness analysis.</p>
            <p>Is the work clearly and accurately presented and does it cite the current literature?</p>
            <p>Partly</p>
            <p>If applicable, is the statistical analysis and its interpretation appropriate?</p>
            <p>Partly</p>
            <p>Are all the source data underlying the results available to ensure full reproducibility?</p>
            <p>No source data required</p>
            <p>Is the study design appropriate and is the work technically sound?</p>
            <p>Partly</p>
            <p>Are the conclusions drawn adequately supported by the results?</p>
            <p>Partly</p>
            <p>Are sufficient details of methods and analysis provided to allow replication by others?</p>
            <p>Yes</p>
            <p>Reviewer Expertise:</p>
            <p>Marketing management</p>
            <p>I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard, however I have significant reservations, as outlined above.</p>
        </body>
    </sub-article>
</article>
