<?xml version="1.0"?>
<ownershipDocument>

    <schemaVersion>X0206</schemaVersion>

    <documentType>3</documentType>

    <periodOfReport>2021-06-02</periodOfReport>

    <noSecuritiesOwned>0</noSecuritiesOwned>

    <issuer>
        <issuerCik>0001403568</issuerCik>
        <issuerName>Ulta Beauty, Inc.</issuerName>
        <issuerTradingSymbol>ULTA</issuerTradingSymbol>
    </issuer>

    <reportingOwner>
        <reportingOwnerId>
            <rptOwnerCik>0001866021</rptOwnerCik>
            <rptOwnerName>Steelman Kecia</rptOwnerName>
        </reportingOwnerId>
        <reportingOwnerAddress>
            <rptOwnerStreet1>1000 REMINGTON BLVD., SUITE 120</rptOwnerStreet1>
            <rptOwnerStreet2></rptOwnerStreet2>
            <rptOwnerCity>BOLINGBROOK</rptOwnerCity>
            <rptOwnerState>IL</rptOwnerState>
            <rptOwnerZipCode>60440</rptOwnerZipCode>
            <rptOwnerStateDescription></rptOwnerStateDescription>
        </reportingOwnerAddress>
        <reportingOwnerRelationship>
            <isDirector>0</isDirector>
            <isOfficer>1</isOfficer>
            <isTenPercentOwner>0</isTenPercentOwner>
            <isOther>0</isOther>
            <officerTitle>Chief Operating Officer</officerTitle>
            <otherText></otherText>
        </reportingOwnerRelationship>
    </reportingOwner>

    <nonDerivativeTable>
        <nonDerivativeHolding>
            <securityTitle>
                <value>Common Stock</value>
            </securityTitle>
            <postTransactionAmounts>
                <sharesOwnedFollowingTransaction>
                    <value>13115</value>
                    <footnoteId id="F1"/>
                    <footnoteId id="F2"/>
                </sharesOwnedFollowingTransaction>
            </postTransactionAmounts>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </nonDerivativeHolding>
    </nonDerivativeTable>

    <derivativeTable>
        <derivativeHolding>
            <securityTitle>
                <value>Stock Option (right to buy)</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <value>116.15</value>
            </conversionOrExercisePrice>
            <exerciseDate>
                <footnoteId id="F3"/>
            </exerciseDate>
            <expirationDate>
                <value>2021-09-16</value>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>Common Stock</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>2423</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeHolding>
        <derivativeHolding>
            <securityTitle>
                <value>Stock Option (right to buy)</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <value>191.76</value>
            </conversionOrExercisePrice>
            <exerciseDate>
                <footnoteId id="F4"/>
            </exerciseDate>
            <expirationDate>
                <value>2026-03-25</value>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>Common Stock</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>1739</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeHolding>
        <derivativeHolding>
            <securityTitle>
                <value>Stock Option (right to buy)</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <value>281.53</value>
            </conversionOrExercisePrice>
            <exerciseDate>
                <footnoteId id="F5"/>
            </exerciseDate>
            <expirationDate>
                <value>2027-03-24</value>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>Common Stock</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>4867</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeHolding>
        <derivativeHolding>
            <securityTitle>
                <value>Stock Option (right to buy)</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <value>204.27</value>
            </conversionOrExercisePrice>
            <exerciseDate>
                <footnoteId id="F6"/>
            </exerciseDate>
            <expirationDate>
                <value>2028-03-29</value>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>Common Stock</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>8332</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeHolding>
        <derivativeHolding>
            <securityTitle>
                <value>Stock Option (right to buy)</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <value>348.73</value>
            </conversionOrExercisePrice>
            <exerciseDate>
                <footnoteId id="F7"/>
            </exerciseDate>
            <expirationDate>
                <value>2029-03-29</value>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>Common Stock</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>5578</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeHolding>
        <derivativeHolding>
            <securityTitle>
                <value>Stock Option (right to buy)</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <value>174.45</value>
            </conversionOrExercisePrice>
            <exerciseDate>
                <footnoteId id="F8"/>
            </exerciseDate>
            <expirationDate>
                <value>2030-03-27</value>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>Common Stock</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>11036</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeHolding>
        <derivativeHolding>
            <securityTitle>
                <value>Stock Option (right to buy)</value>
            </securityTitle>
            <conversionOrExercisePrice>
                <value>306.59</value>
            </conversionOrExercisePrice>
            <exerciseDate>
                <footnoteId id="F9"/>
            </exerciseDate>
            <expirationDate>
                <value>2031-03-25</value>
            </expirationDate>
            <underlyingSecurity>
                <underlyingSecurityTitle>
                    <value>Common Stock</value>
                </underlyingSecurityTitle>
                <underlyingSecurityShares>
                    <value>6306</value>
                </underlyingSecurityShares>
            </underlyingSecurity>
            <ownershipNature>
                <directOrIndirectOwnership>
                    <value>D</value>
                </directOrIndirectOwnership>
            </ownershipNature>
        </derivativeHolding>
    </derivativeTable>

    <footnotes>
        <footnote id="F1">Includes grant of shares of restricted stock as follows: 2,010 shares vesting 100% on March 15, 2022; 2,293 shares vesting 100% on March 15, 2023; 3,442 shares vesting 100% on March 15, 2023; 2,139 shares vesting 100% on October 5, 2023; and 1,462 shares vesting on March 15, 2024.</footnote>
        <footnote id="F2">Includes 508 performance-based restricted share units, which were awarded on March 29, 2019 under the Amended and Restated Ulta Beauty, Inc. 2011 Incentive Award Plan. Each performance-based restricted share unit represents the right to one share of common stock, which vested based on satisfaction of certain performance goals and a time-based service vesting restriction which lapses on March 15, 2022, subject to continued employment. The Company's compensation committee certified on March 25, 2021 that the performance vesting goals were satisfied.</footnote>
        <footnote id="F3">The options, representing an initial right to purchase a total of 9,691 shares, vesting in 25% annual increments beginning September 16, 2015 and each anniversary thereafter through September 16, 2018.</footnote>
        <footnote id="F4">The options, representing an initial right to purchase a total of 3,478 shares, vesting in 25% annual increments beginning March 15, 2017 and each anniversary thereafter through March 15, 2020.</footnote>
        <footnote id="F5">The options, representing an initial right to purchase a total of 4,867 shares, vesting in 25% annual increments beginning March 15, 2018 and each anniversary thereafter through March 15, 2021.</footnote>
        <footnote id="F6">The options, representing an initial right to purchase a total of 8,332 shares, vesting in 25% annual increments beginning March 15, 2019 and each anniversary thereafter through March 15, 2022.</footnote>
        <footnote id="F7">The options, representing an initial right to purchase a total of 5,578 shares, vesting in 25% annual increments beginning March 15, 2020 and each anniversary thereafter through March 15, 2023.</footnote>
        <footnote id="F8">The options, representing an initial right to purchase a total of 11,036 shares, vesting in 25% annual increments beginning March 15, 2021 and each anniversary thereafter through March 15, 2024.</footnote>
        <footnote id="F9">The options, representing an initial right to purchase a total of 6,306 shares, vesting in 25% annual increments beginning March 15, 2022 and each anniversary thereafter through March 15, 2025.</footnote>
    </footnotes>

    <ownerSignature>
        <signatureName>/s/ Jodi J. Caro, as attorney-in-fact for Kecia Steelman</signatureName>
        <signatureDate>2021-06-14</signatureDate>
    </ownerSignature>
</ownershipDocument>
