<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xml:lang="en-US"
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:dei="http://xbrl.sec.gov/dei/2026"
  xmlns:ffd="http://xbrl.sec.gov/ffd/2026"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef
      xlink:href="https://xbrl.sec.gov/ffd/2026/ffd-2026.xsd"
      xlink:type="simple"/>
    <context id="c-1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001274737</identifier>
        </entity>
        <period>
            <startDate>2026-05-12</startDate>
            <endDate>2026-05-12</endDate>
        </period>
    </context>
    <context id="c-2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001274737</identifier>
            <segment>
                <xbrldi:typedMember dimension="ffd:OfferingAxis">
                    <dei:lineNo>1</dei:lineNo>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-05-12</startDate>
            <endDate>2026-05-12</endDate>
        </period>
    </context>
    <context id="c-3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001274737</identifier>
            <segment>
                <xbrldi:typedMember dimension="ffd:OfferingAxis">
                    <dei:lineNo>2</dei:lineNo>
                </xbrldi:typedMember>
            </segment>
        </entity>
        <period>
            <startDate>2026-05-12</startDate>
            <endDate>2026-05-12</endDate>
        </period>
    </context>
    <unit id="shares">
        <measure>shares</measure>
    </unit>
    <unit id="usd">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="number">
        <measure>pure</measure>
    </unit>
    <dei:EntityCentralIndexKey contextRef="c-1" id="f-29">0001274737</dei:EntityCentralIndexKey>
    <ffd:FeeExhibitTp contextRef="c-1" id="f-30">EX-FILING FEES</ffd:FeeExhibitTp>
    <ffd:OffsetTableNa contextRef="c-1" id="f-31">N/A</ffd:OffsetTableNa>
    <ffd:FormTp contextRef="c-1" id="f-1">S-8</ffd:FormTp>
    <ffd:SubmissnTp contextRef="c-1" id="f-2">S-8</ffd:SubmissnTp>
    <dei:EntityRegistrantName contextRef="c-1" id="f-3">Exagen Inc.</dei:EntityRegistrantName>
    <ffd:PrevslyPdFlg contextRef="c-2" id="f-4">false</ffd:PrevslyPdFlg>
    <ffd:OfferingSctyTp contextRef="c-2" id="f-5">Equity</ffd:OfferingSctyTp>
    <ffd:OfferingSctyTitl contextRef="c-2" id="f-6">Common Stock, par value $0.001 per share</ffd:OfferingSctyTitl>
    <ffd:FeesOthrRuleFlg contextRef="c-2" id="f-7">true</ffd:FeesOthrRuleFlg>
    <ffd:AmtSctiesRegd contextRef="c-2" decimals="0" id="f-8" unitRef="shares">916463</ffd:AmtSctiesRegd>
    <ffd:MaxOfferingPricPerScty contextRef="c-2" decimals="2" id="f-9" unitRef="usd">3.1</ffd:MaxOfferingPricPerScty>
    <ffd:MaxAggtOfferingPric contextRef="c-2" decimals="2" id="f-10" unitRef="usd">2841035.3</ffd:MaxAggtOfferingPric>
    <ffd:FeeRate contextRef="c-2" decimals="7" id="f-11" unitRef="number">0.0001381</ffd:FeeRate>
    <ffd:FeeAmt contextRef="c-2" decimals="2" id="f-12" unitRef="usd">392.35</ffd:FeeAmt>
    <ffd:PrevslyPdFlg contextRef="c-3" id="f-13">false</ffd:PrevslyPdFlg>
    <ffd:OfferingSctyTp contextRef="c-3" id="f-14">Equity</ffd:OfferingSctyTp>
    <ffd:OfferingSctyTitl contextRef="c-3" id="f-15">Common Stock, par value $0.001 per share</ffd:OfferingSctyTitl>
    <ffd:FeesOthrRuleFlg contextRef="c-3" id="f-16">true</ffd:FeesOthrRuleFlg>
    <ffd:AmtSctiesRegd contextRef="c-3" decimals="0" id="f-17" unitRef="shares">229115</ffd:AmtSctiesRegd>
    <ffd:MaxOfferingPricPerScty contextRef="c-3" decimals="2" id="f-18" unitRef="usd">3.1</ffd:MaxOfferingPricPerScty>
    <ffd:MaxAggtOfferingPric contextRef="c-3" decimals="2" id="f-19" unitRef="usd">710256.5</ffd:MaxAggtOfferingPric>
    <ffd:FeeRate contextRef="c-3" decimals="7" id="f-20" unitRef="number">0.0001381</ffd:FeeRate>
    <ffd:FeeAmt contextRef="c-3" decimals="2" id="f-21" unitRef="usd">98.09</ffd:FeeAmt>
    <ffd:TtlOfferingAmt contextRef="c-1" decimals="2" id="f-22" unitRef="usd">3551291.8</ffd:TtlOfferingAmt>
    <ffd:TtlFeeAmt contextRef="c-1" decimals="2" id="f-23" unitRef="usd">490.44</ffd:TtlFeeAmt>
    <ffd:TtlPrevslyPdAmt contextRef="c-1" decimals="2" id="f-24" unitRef="usd">0</ffd:TtlPrevslyPdAmt>
    <ffd:TtlOffsetAmt contextRef="c-1" decimals="2" id="f-25" unitRef="usd">0</ffd:TtlOffsetAmt>
    <ffd:NetFeeAmt contextRef="c-1" decimals="2" id="f-26" unitRef="usd">490.44</ffd:NetFeeAmt>
    <ffd:OfferingNote contextRef="c-2" id="f-27">&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Pursuant to Rule 416(a) under the Securities Act of 1933, as amended (the &#x201c;Securities Act&#x201d;), this Registration Statement also covers an indeterminate number of additional shares of common stock, par value $0.001 per share (&#x201c;Common Stock&#x201d;), of Exagen Inc. (the &#x201c;Registrant&#x201d;), which may be subject to grant or otherwise issuable after the operation of any anti-dilution and other provisions of the Registrant&#x2019;s 2019 Incentive Award Plan (the &#x201c;2019 Plan&#x201d;), or the Registrant&#x2019;s 2019 Employee Stock Purchase Plan (the &#x201c;2019 ESPP&#x201d;).&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Represents an increase of 916,463 shares of Common Stock of the Registrant authorized for issuance for compensatory purposes only, as previously authorized under the 2019 Plan as of January&#160;1, 2026, in connection with an &#x201c;evergreen&#x201d; provision in the 2019 Plan.&lt;/span&gt;&lt;/div&gt;&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated solely for the purpose of calculating the amount of the registration fee pursuant to Rule 457(c) and Rule 457(h) promulgated under the Securities Act. The offering price per share and the aggregate offering price are based on the average of the high and the low price of the Registrant&#x2019;s Common Stock as reported on The Nasdaq Global Market as of a date (May 6, 2026) within five business days prior to filing this Registration Statement.&lt;/span&gt;&lt;/div&gt;</ffd:OfferingNote>
    <ffd:OfferingNote contextRef="c-3" id="f-28">&lt;div style="margin-bottom:0.1pt"&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Pursuant to Rule 416(a) under the Securities Act, this Registration Statement also covers an indeterminate number of additional shares of Common Stock of the Registrant, which may be subject to grant or otherwise issuable after the operation of any anti-dilution and other provisions of the 2019 Plan or the 2019 ESPP.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Represents an increase of 229,115 shares of Common Stock of the Registrant authorized for issuance for compensatory purposes only, as previously authorized under the 2019 ESPP as of January&#160;1, 2026, in connection with an &#x201c;evergreen&#x201d; provision in the 2019 ESPP.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style="color:#000000;font-family:'Times New Roman',serif;font-size:10pt;font-weight:400;line-height:100%"&gt;Estimated solely for the purpose of calculating the amount of the registration fee pursuant to Rule 457(c) and Rule 457(h) promulgated under the Securities Act. The offering price per share and the aggregate offering price are based on the average of the high and the low price of the Registrant&#x2019;s Common Stock as reported on The Nasdaq Global Market as of a date (May 6, 2026) within five business days prior to filing this Registration Statement.&lt;/span&gt;&lt;/div&gt;</ffd:OfferingNote>
</xbrl>
