spsc-10q_20210630.htm
false 2021 Q2 0001092699 --12-31 2021 P3Y P3Y P3Y P6Y P6Y P4Y P4Y P1Y P5Y P1Y P5Y P4Y4M24D P6M 0001092699 2021-01-01 2021-06-30 xbrli:shares 0001092699 2021-07-22 iso4217:USD 0001092699 2021-06-30 0001092699 2020-12-31 iso4217:USD xbrli:shares 0001092699 2021-04-01 2021-06-30 0001092699 2020-04-01 2020-06-30 0001092699 2020-01-01 2020-06-30 0001092699 us-gaap:CommonStockMember 2020-03-31 0001092699 us-gaap:TreasuryStockMember 2020-03-31 0001092699 us-gaap:AdditionalPaidInCapitalMember 2020-03-31 0001092699 us-gaap:RetainedEarningsMember 2020-03-31 0001092699 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-03-31 0001092699 2020-03-31 0001092699 us-gaap:AdditionalPaidInCapitalMember 2020-04-01 2020-06-30 0001092699 us-gaap:CommonStockMember 2020-04-01 2020-06-30 0001092699 us-gaap:TreasuryStockMember 2020-04-01 2020-06-30 0001092699 us-gaap:RetainedEarningsMember 2020-04-01 2020-06-30 0001092699 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-04-01 2020-06-30 0001092699 us-gaap:CommonStockMember 2020-06-30 0001092699 us-gaap:TreasuryStockMember 2020-06-30 0001092699 us-gaap:AdditionalPaidInCapitalMember 2020-06-30 0001092699 us-gaap:RetainedEarningsMember 2020-06-30 0001092699 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-06-30 0001092699 2020-06-30 0001092699 us-gaap:CommonStockMember 2021-03-31 0001092699 us-gaap:TreasuryStockMember 2021-03-31 0001092699 us-gaap:AdditionalPaidInCapitalMember 2021-03-31 0001092699 us-gaap:RetainedEarningsMember 2021-03-31 0001092699 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-03-31 0001092699 2021-03-31 0001092699 us-gaap:AdditionalPaidInCapitalMember 2021-04-01 2021-06-30 0001092699 us-gaap:CommonStockMember 2021-04-01 2021-06-30 0001092699 us-gaap:TreasuryStockMember 2021-04-01 2021-06-30 0001092699 us-gaap:RetainedEarningsMember 2021-04-01 2021-06-30 0001092699 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-04-01 2021-06-30 0001092699 us-gaap:CommonStockMember 2021-06-30 0001092699 us-gaap:TreasuryStockMember 2021-06-30 0001092699 us-gaap:AdditionalPaidInCapitalMember 2021-06-30 0001092699 us-gaap:RetainedEarningsMember 2021-06-30 0001092699 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-06-30 0001092699 us-gaap:CommonStockMember 2019-12-31 0001092699 us-gaap:TreasuryStockMember 2019-12-31 0001092699 us-gaap:AdditionalPaidInCapitalMember 2019-12-31 0001092699 us-gaap:RetainedEarningsMember 2019-12-31 0001092699 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2019-12-31 0001092699 2019-12-31 0001092699 us-gaap:AdditionalPaidInCapitalMember 2020-01-01 2020-06-30 0001092699 us-gaap:CommonStockMember 2020-01-01 2020-06-30 0001092699 us-gaap:TreasuryStockMember 2020-01-01 2020-06-30 0001092699 us-gaap:RetainedEarningsMember 2020-01-01 2020-06-30 0001092699 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-01-01 2020-06-30 0001092699 us-gaap:RetainedEarningsMember us-gaap:AccountingStandardsUpdate201613Member srt:RevisionOfPriorPeriodAccountingStandardsUpdateAdjustmentMember 2020-06-30 0001092699 us-gaap:AccountingStandardsUpdate201613Member srt:RevisionOfPriorPeriodAccountingStandardsUpdateAdjustmentMember 2020-06-30 0001092699 us-gaap:CommonStockMember 2020-12-31 0001092699 us-gaap:TreasuryStockMember 2020-12-31 0001092699 us-gaap:AdditionalPaidInCapitalMember 2020-12-31 0001092699 us-gaap:RetainedEarningsMember 2020-12-31 0001092699 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-12-31 0001092699 us-gaap:AdditionalPaidInCapitalMember 2021-01-01 2021-06-30 0001092699 us-gaap:CommonStockMember 2021-01-01 2021-06-30 0001092699 us-gaap:TreasuryStockMember 2021-01-01 2021-06-30 0001092699 us-gaap:RetainedEarningsMember 2021-01-01 2021-06-30 0001092699 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-06-30 0001092699 spsc:PerformanceShareUnitsRestrictedStockUnitsRestrictedStockAwardsAndDeferredStockUnitsMember 2021-01-01 2021-06-30 0001092699 spsc:DataMasonsMember 2021-03-31 0001092699 spsc:FulfillmentMember spsc:RecurringRevenuesMember 2021-04-01 2021-06-30 0001092699 spsc:FulfillmentMember spsc:RecurringRevenuesMember 2020-04-01 2020-06-30 0001092699 spsc:FulfillmentMember spsc:RecurringRevenuesMember 2021-01-01 2021-06-30 0001092699 spsc:FulfillmentMember spsc:RecurringRevenuesMember 2020-01-01 2020-06-30 0001092699 spsc:AnalyticsMember spsc:RecurringRevenuesMember 2021-04-01 2021-06-30 0001092699 spsc:AnalyticsMember spsc:RecurringRevenuesMember 2020-04-01 2020-06-30 0001092699 spsc:AnalyticsMember spsc:RecurringRevenuesMember 2021-01-01 2021-06-30 0001092699 spsc:AnalyticsMember spsc:RecurringRevenuesMember 2020-01-01 2020-06-30 0001092699 spsc:OtherMember spsc:RecurringRevenuesMember 2021-04-01 2021-06-30 0001092699 spsc:OtherMember spsc:RecurringRevenuesMember 2020-04-01 2020-06-30 0001092699 spsc:OtherMember spsc:RecurringRevenuesMember 2021-01-01 2021-06-30 0001092699 spsc:OtherMember spsc:RecurringRevenuesMember 2020-01-01 2020-06-30 0001092699 spsc:RecurringRevenuesMember 2021-04-01 2021-06-30 0001092699 spsc:RecurringRevenuesMember 2020-04-01 2020-06-30 0001092699 spsc:RecurringRevenuesMember 2021-01-01 2021-06-30 0001092699 spsc:RecurringRevenuesMember 2020-01-01 2020-06-30 0001092699 spsc:OneTimeRevenuesMember 2021-04-01 2021-06-30 0001092699 spsc:OneTimeRevenuesMember 2020-04-01 2020-06-30 0001092699 spsc:OneTimeRevenuesMember 2021-01-01 2021-06-30 0001092699 spsc:OneTimeRevenuesMember 2020-01-01 2020-06-30 0001092699 srt:MinimumMember 2021-01-01 2021-06-30 0001092699 srt:MaximumMember 2021-01-01 2021-06-30 0001092699 spsc:AnalyticsMember 2021-01-01 2021-06-30 0001092699 spsc:SetUpFeesMember 2021-03-31 0001092699 spsc:SetUpFeesMember 2020-03-31 0001092699 spsc:SetUpFeesMember 2020-12-31 0001092699 spsc:SetUpFeesMember 2019-12-31 0001092699 spsc:SetUpFeesMember 2021-04-01 2021-06-30 0001092699 spsc:SetUpFeesMember 2020-04-01 2020-06-30 0001092699 spsc:SetUpFeesMember 2021-01-01 2021-06-30 0001092699 spsc:SetUpFeesMember 2020-01-01 2020-06-30 0001092699 spsc:SetUpFeesMember 2021-06-30 0001092699 spsc:SetUpFeesMember 2020-06-30 0001092699 us-gaap:MoneyMarketFundsMember 2021-06-30 0001092699 us-gaap:CertificatesOfDepositMember 2021-06-30 0001092699 us-gaap:CorporateDebtSecuritiesMember 2021-06-30 0001092699 us-gaap:CommercialPaperMember 2021-06-30 0001092699 us-gaap:USTreasurySecuritiesMember 2021-06-30 0001092699 us-gaap:MoneyMarketFundsMember 2020-12-31 0001092699 us-gaap:CertificatesOfDepositMember 2020-12-31 0001092699 us-gaap:CorporateDebtSecuritiesMember 2020-12-31 0001092699 us-gaap:CommercialPaperMember 2020-12-31 0001092699 us-gaap:USTreasurySecuritiesMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel1Member us-gaap:MoneyMarketFundsMember 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:MoneyMarketFundsMember 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel1Member us-gaap:MoneyMarketFundsMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:MoneyMarketFundsMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel1Member us-gaap:CertificatesOfDepositMember 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:CertificatesOfDepositMember 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel1Member us-gaap:CertificatesOfDepositMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:CertificatesOfDepositMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel2Member us-gaap:CorporateDebtSecuritiesMember 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:CorporateDebtSecuritiesMember 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel2Member us-gaap:CorporateDebtSecuritiesMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:CorporateDebtSecuritiesMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel2Member us-gaap:CommercialPaperMember 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:CommercialPaperMember 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel2Member us-gaap:CommercialPaperMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:CommercialPaperMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel2Member us-gaap:USTreasurySecuritiesMember 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:USTreasurySecuritiesMember 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel2Member us-gaap:USTreasurySecuritiesMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:USTreasurySecuritiesMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel1Member 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel2Member 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember 2021-06-30 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel1Member 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel2Member 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel3Member spsc:ContingentConsiderationLiabilityMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember spsc:ContingentConsiderationLiabilityMember 2020-12-31 0001092699 us-gaap:FairValueMeasurementsRecurringMember us-gaap:FairValueInputsLevel3Member 2020-12-31 0001092699 spsc:DataMasonsMember spsc:PPPLoanMember spsc:FormerOwnersMember 2021-06-30 0001092699 spsc:DataMasonsMember spsc:PPPLoanMember spsc:FormerOwnersMember 2021-04-01 2021-06-30 0001092699 us-gaap:CustomerRelationshipsMember 2021-06-30 0001092699 us-gaap:NoncompeteAgreementsMember 2021-06-30 0001092699 us-gaap:TechnologyBasedIntangibleAssetsMember 2021-06-30 0001092699 us-gaap:CustomerRelationshipsMember 2020-12-31 0001092699 us-gaap:NoncompeteAgreementsMember 2020-12-31 0001092699 us-gaap:TechnologyBasedIntangibleAssetsMember 2020-12-31 0001092699 srt:MinimumMember spsc:OtherLeasesMember 2021-06-30 0001092699 srt:MaximumMember spsc:OtherLeasesMember 2021-06-30 0001092699 stpr:MN 2021-06-30 0001092699 country:UA 2021-06-30 0001092699 spsc:OtherLeasesMember 2021-06-30 0001092699 srt:MinimumMember spsc:OtherLeasesMember 2020-12-31 0001092699 srt:MaximumMember spsc:OtherLeasesMember 2020-12-31 0001092699 stpr:MN 2020-12-31 0001092699 country:UA 2020-12-31 0001092699 spsc:OtherLeasesMember 2020-12-31 xbrli:pure 0001092699 us-gaap:CommonStockMember 2019-11-02 0001092699 us-gaap:CommonStockMember 2019-11-02 2019-11-02 0001092699 spsc:StockRepurchaseProgram1Member 2021-04-01 2021-06-30 0001092699 us-gaap:CostOfSalesMember 2021-04-01 2021-06-30 0001092699 us-gaap:CostOfSalesMember 2020-04-01 2020-06-30 0001092699 us-gaap:CostOfSalesMember 2021-01-01 2021-06-30 0001092699 us-gaap:CostOfSalesMember 2020-01-01 2020-06-30 0001092699 us-gaap:SellingAndMarketingExpenseMember 2021-04-01 2021-06-30 0001092699 us-gaap:SellingAndMarketingExpenseMember 2020-04-01 2020-06-30 0001092699 us-gaap:SellingAndMarketingExpenseMember 2021-01-01 2021-06-30 0001092699 us-gaap:SellingAndMarketingExpenseMember 2020-01-01 2020-06-30 0001092699 us-gaap:ResearchAndDevelopmentExpenseMember 2021-04-01 2021-06-30 0001092699 us-gaap:ResearchAndDevelopmentExpenseMember 2020-04-01 2020-06-30 0001092699 us-gaap:ResearchAndDevelopmentExpenseMember 2021-01-01 2021-06-30 0001092699 us-gaap:ResearchAndDevelopmentExpenseMember 2020-01-01 2020-06-30 0001092699 us-gaap:GeneralAndAdministrativeExpenseMember 2021-04-01 2021-06-30 0001092699 us-gaap:GeneralAndAdministrativeExpenseMember 2020-04-01 2020-06-30 0001092699 us-gaap:GeneralAndAdministrativeExpenseMember 2021-01-01 2021-06-30 0001092699 us-gaap:GeneralAndAdministrativeExpenseMember 2020-01-01 2020-06-30 0001092699 us-gaap:EmployeeStockOptionMember 2021-04-01 2021-06-30 0001092699 us-gaap:EmployeeStockOptionMember 2020-04-01 2020-06-30 0001092699 us-gaap:EmployeeStockOptionMember 2021-01-01 2021-06-30 0001092699 us-gaap:EmployeeStockOptionMember 2020-01-01 2020-06-30 0001092699 us-gaap:PerformanceSharesMember 2021-04-01 2021-06-30 0001092699 us-gaap:PerformanceSharesMember 2020-04-01 2020-06-30 0001092699 us-gaap:PerformanceSharesMember 2021-01-01 2021-06-30 0001092699 us-gaap:PerformanceSharesMember 2020-01-01 2020-06-30 0001092699 us-gaap:RestrictedStockUnitsRSUMember 2021-04-01 2021-06-30 0001092699 us-gaap:RestrictedStockUnitsRSUMember 2020-04-01 2020-06-30 0001092699 us-gaap:RestrictedStockUnitsRSUMember 2021-01-01 2021-06-30 0001092699 us-gaap:RestrictedStockUnitsRSUMember 2020-01-01 2020-06-30 0001092699 spsc:RestrictedStockUnitsAndDeferredStockUnitsMember 2021-04-01 2021-06-30 0001092699 spsc:RestrictedStockUnitsAndDeferredStockUnitsMember 2020-04-01 2020-06-30 0001092699 spsc:RestrictedStockUnitsAndDeferredStockUnitsMember 2021-01-01 2021-06-30 0001092699 spsc:RestrictedStockUnitsAndDeferredStockUnitsMember 2020-01-01 2020-06-30 0001092699 spsc:EmployeeStockPurchasePlanMember 2021-04-01 2021-06-30 0001092699 spsc:EmployeeStockPurchasePlanMember 2020-04-01 2020-06-30 0001092699 spsc:EmployeeStockPurchasePlanMember 2021-01-01 2021-06-30 0001092699 spsc:EmployeeStockPurchasePlanMember 2020-01-01 2020-06-30 0001092699 spsc:FourZeroOneKStockMatchMember 2021-04-01 2021-06-30 0001092699 spsc:FourZeroOneKStockMatchMember 2020-04-01 2020-06-30 0001092699 spsc:FourZeroOneKStockMatchMember 2021-01-01 2021-06-30 0001092699 spsc:FourZeroOneKStockMatchMember 2020-01-01 2020-06-30 0001092699 us-gaap:EmployeeStockOptionMember 2021-06-30 0001092699 us-gaap:PerformanceSharesMember 2021-01-01 2021-03-31 0001092699 us-gaap:PerformanceSharesMember 2020-01-01 2020-03-31 0001092699 us-gaap:PerformanceSharesMember 2019-01-01 2019-03-31 0001092699 spsc:PerformanceShareUnitsRestrictedStockUnitsRestrictedStockAwardsAndDeferredStockUnitsMember 2020-12-31 0001092699 spsc:PerformanceShareUnitsRestrictedStockUnitsRestrictedStockAwardsAndDeferredStockUnitsMember 2021-06-30 0001092699 us-gaap:EmployeeStockMember 2021-04-01 2021-06-30 0001092699 us-gaap:EmployeeStockMember 2020-04-01 2020-06-30 0001092699 us-gaap:EmployeeStockMember 2021-01-01 2021-06-30 0001092699 us-gaap:EmployeeStockMember 2020-01-01 2020-06-30 0001092699 us-gaap:EmployeeStockMember 2021-06-30 spsc:jurisdiction 0001092699 us-gaap:GeographicConcentrationRiskMember us-gaap:GeographicDistributionForeignMember srt:MaximumMember 2021-01-01 2021-06-30 0001092699 us-gaap:GeographicConcentrationRiskMember us-gaap:GeographicDistributionDomesticMember 2021-04-01 2021-06-30 0001092699 us-gaap:GeographicConcentrationRiskMember us-gaap:GeographicDistributionDomesticMember 2020-04-01 2020-06-30 0001092699 us-gaap:GeographicConcentrationRiskMember us-gaap:GeographicDistributionDomesticMember 2021-01-01 2021-06-30 0001092699 us-gaap:GeographicConcentrationRiskMember us-gaap:GeographicDistributionDomesticMember 2020-01-01 2020-06-30 0001092699 us-gaap:GeographicConcentrationRiskMember us-gaap:GeographicDistributionForeignMember us-gaap:PropertyPlantAndEquipmentMember 2021-01-01 2021-06-30 0001092699 us-gaap:GeographicConcentrationRiskMember us-gaap:GeographicDistributionForeignMember us-gaap:PropertyPlantAndEquipmentMember 2020-01-01 2020-06-30

UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

WASHINGTON, D.C. 20549

FORM 10-Q

(Mark One)

QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934

 

For the Quarterly Period Ended: June 30, 2021

 

TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934

 

For the Transition Period from              to             

Commission file number 001-34702

SPS COMMERCE, INC.

(Exact Name of Registrant as Specified in its Charter)

 

Delaware

41-2015127

(State or other jurisdiction of

incorporation or organization)

(I.R.S. Employer

Identification No.)

 

333 South Seventh Street, Suite 1000, Minneapolis, MN 55402

(Address of principal executive offices, including Zip Code)

(612) 435-9400

(Registrant’s telephone number, including area code)

 

Securities registered pursuant to Section 12(b) of the Act:

Title of each class

 

Trading Symbol

 

Name of exchange on which registered

Common Stock, par value $0.001 per share

 

SPSC

 

The Nasdaq Stock Market LLC (Nasdaq Global Market)

 

Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.  Yes ☒  No 

Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (§232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).    Yes  ☒    No  

Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company,” and “emerging growth company” in Rule 12b-2 of the Exchange Act.

 

Large accelerated filer

 

  

Accelerated filer

 

 

 

 

 

 

 

 

Non-accelerated filer

 

  

Smaller reporting company

 

 

 

 

 

 

 

 

 

 

 

 

Emerging growth company

 

 

If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. 

Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).    Yes      No  

The number of shares of the registrant’s common stock, par value $0.001 per share, outstanding at July 22, 2021 was 35,831,643 shares.

 


Table of Contents

 

 

SPS COMMERCE, INC.

QUARTERLY REPORT ON FORM 10-Q

TABLE OF CONTENTS

 

 

 

 

 

Page

PART I. FINANCIAL INFORMATION

 

 

 

 

 

Item 1.

 

Financial Statements (unaudited)

 

3

 

 

 

 

 

 

 

Condensed Consolidated Balance Sheets

 

3

 

 

 

 

 

 

 

Condensed Consolidated Statements of Comprehensive Income

 

4

 

 

 

 

 

 

 

Condensed Consolidated Statements of Stockholders’ Equity

 

5

 

 

 

 

 

 

 

Condensed Consolidated Statements of Cash Flows  

 

6

 

 

 

 

 

 

 

Notes to Condensed Consolidated Financial Statements

 

7

 

 

 

 

 

Item 2.

 

Management’s Discussion and Analysis of Financial Condition and Results of Operations

 

18

 

 

 

 

 

Item 3.

 

Quantitative and Qualitative Disclosures About Market Risk

 

26

 

 

 

 

 

Item 4.

 

Controls and Procedures

 

26

 

 

 

 

 

PART II. OTHER INFORMATION

 

 

 

 

 

Item 1.

 

Legal Proceedings

 

27

 

 

 

 

 

Item 1A.

 

Risk Factors

 

27

 

 

 

 

 

Item 2.

 

Unregistered Sales of Equity Securities and Use of Proceeds

 

27

 

 

 

 

 

Item 3.

 

Defaults Upon Senior Securities

 

27

 

 

 

 

 

Item 4.

 

Mine Safety Disclosures

 

27

 

 

 

 

 

Item 5.

 

Other Information

 

27

 

 

 

 

 

Item 6.

 

Exhibits

 

28

 

 

 

 

 

Signatures

 

29

 

Unless the context otherwise requires, for purposes of the Quarterly Report on Form 10-Q, the words “we,” “us,” “our,” the “Company,” “SPS,” and “SPS Commerce” refer to SPS Commerce, Inc.


 

    SPS COMMERCE, INC.

2

Form 10-Q for the Quarterly Period ended June 30, 2021

 


Table of Contents

 

 

PART I. – FINANCIAL INFORMATION

Item 1.Financial Statements

SPS COMMERCE, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED BALANCE SHEETS

 

 

 

June 30,

 

 

December 31,

 

(In thousands, except shares)

 

2021

 

 

2020

 

ASSETS

 

(unaudited)

 

 

 

 

 

CURRENT ASSETS

 

 

 

 

 

 

 

 

Cash and cash equivalents

 

$

184,367

 

 

$

149,692

 

Short-term investments

 

 

48,999

 

 

 

37,786

 

Accounts receivable

 

 

42,191

 

 

 

37,811

 

Allowance for credit losses

 

 

(4,255

)

 

 

(4,233

)

Accounts receivable, net

 

 

37,936

 

 

 

33,578

 

Deferred costs

 

 

40,149

 

 

 

37,988

 

Other assets

 

 

11,711

 

 

 

12,312

 

Total current assets

 

 

323,162

 

 

 

271,356

 

PROPERTY AND EQUIPMENT, less accumulated depreciation of $67,074 and $59,152, respectively

 

 

29,046

 

 

 

26,432

 

OPERATING LEASE RIGHT-OF-USE ASSETS

 

 

13,352

 

 

 

15,581

 

GOODWILL

 

 

135,354

 

 

 

134,853

 

INTANGIBLE ASSETS, net

 

 

54,950

 

 

 

60,230

 

INVESTMENTS

 

 

 

 

 

2,500

 

OTHER ASSETS

 

 

 

 

 

 

 

 

Deferred costs, non-current

 

 

13,692

 

 

 

12,607

 

Deferred income tax assets

 

 

246

 

 

 

194

 

Other assets, non-current

 

 

2,476

 

 

 

2,705

 

Total assets

 

$

572,278

 

 

$

526,458

 

LIABILITIES AND STOCKHOLDERS’ EQUITY

 

 

 

 

 

 

 

 

CURRENT LIABILITIES

 

 

 

 

 

 

 

 

Accounts payable

 

$

5,942

 

 

$

5,354

 

Accrued compensation

 

 

27,469

 

 

 

22,872

 

Accrued expenses

 

 

5,221

 

 

 

11,161

 

Deferred revenue

 

 

48,845

 

 

 

37,947

 

Operating lease liabilities

 

 

3,960

 

 

 

2,798

 

Total current liabilities

 

 

91,437

 

 

 

80,132

 

OTHER LIABILITIES

 

 

 

 

 

 

 

 

Deferred revenue, non-current

 

 

4,991

 

 

 

2,996

 

Operating lease liabilities, non-current

 

 

17,733

 

 

 

19,672

 

Deferred income tax liabilities

 

 

3,368

 

 

 

2,937

 

Total liabilities

 

 

117,529

 

 

 

105,737

 

COMMITMENTS and CONTINGENCIES

 

 

 

 

 

 

 

 

STOCKHOLDERS’ EQUITY

 

 

 

 

 

 

 

 

Preferred stock, $0.001 par value; 5,000,000 shares authorized; 0 shares issued and outstanding

 

 

 

 

 

 

Common stock, $0.001 par value; 110,000,000 shares authorized; 37,536,118 and 37,100,467 shares issued; and 35,859,353 and 35,487,217 outstanding, respectively

 

 

38

 

 

 

37

 

Treasury stock, at cost; 1,676,765 and 1,613,250 shares, respectively

 

 

(71,697

)

 

 

(65,247

)

Additional paid-in capital

 

 

413,182

 

 

 

393,462

 

Retained earnings

 

 

113,873

 

 

 

93,490

 

Accumulated other comprehensive loss

 

 

(647

)

 

 

(1,021

)

Total stockholders’ equity

 

 

454,749

 

 

 

420,721

 

Total liabilities and stockholders’ equity

 

$

572,278

 

 

$

526,458

 

See accompanying notes to these condensed consolidated financial statements.

 

    SPS COMMERCE, INC.

3

Form 10-Q for the Quarterly Period ended June 30, 2021

 


Table of Contents

 

SPS COMMERCE, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME

 

 

 

Three Months Ended

 

 

Six Months Ended

 

 

 

June 30,

 

 

June 30,

 

(In thousands, except per share amounts) (Unaudited)

 

2021

 

 

2020

 

 

2021

 

 

2020

 

Revenues

 

$

94,539

 

 

$

75,573

 

 

$

184,633

 

 

$

149,765

 

Cost of revenues

 

 

31,730

 

 

 

24,326

 

 

 

61,700

 

 

 

47,870

 

Gross profit

 

 

62,809

 

 

 

51,247

 

 

 

122,933

 

 

 

101,895

 

Operating expenses

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Sales and marketing

 

 

21,952

 

 

 

18,611

 

 

 

43,307

 

 

 

36,910

 

Research and development

 

 

8,899

 

 

 

7,466

 

 

 

17,605

 

 

 

15,034

 

General and administrative

 

 

15,758

 

 

 

12,743

 

 

 

30,495

 

 

 

24,652

 

Amortization of intangible assets

 

 

2,671

 

 

 

1,316

 

 

 

5,335

 

 

 

2,652

 

Total operating expenses

 

 

49,280

 

 

 

40,136

 

 

 

96,742

 

 

 

79,248

 

Income from operations

 

 

13,529

 

 

 

11,111

 

 

 

26,191

 

 

 

22,647

 

Other income (expense), net

 

 

(383

)

 

 

1,468

 

 

 

(708

)

 

 

795

 

Income before income taxes

 

 

13,146

 

 

 

12,579

 

 

 

25,483

 

 

 

23,442

 

Income tax expense

 

 

2,963

 

 

 

1,385

 

 

 

5,100

 

 

 

2,733

 

Net income

 

$

10,183

 

 

$

11,194

 

 

$

20,383

 

 

$

20,709

 

Other comprehensive income (expense)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Foreign currency translation adjustments

 

 

172

 

 

 

2,116

 

 

 

364

 

 

 

(1,748

)

Unrealized gain (loss) on investments, net of tax of ($12), $3, ($27) and $26, respectively

 

 

(35

)

 

 

7

 

 

 

(80

)

 

 

78

 

Reclassification of (gain) loss on investments into earnings, net of tax of $11, ($27), $30 and ($53), respectively

 

 

33

 

 

 

(79

)

 

 

90

 

 

 

(158

)

Total other comprehensive income (expense)

 

 

170

 

 

 

2,044

 

 

 

374

 

 

 

(1,828

)

Comprehensive income

 

$

10,353

 

 

$

13,238

 

 

$

20,757

 

 

$

18,881

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Net income per share

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Basic

 

$

0.28

 

 

$

0.32

 

 

$

0.57

 

 

$

0.59

 

Diluted

 

$

0.28

 

 

$

0.31

 

 

$

0.55

 

 

$

0.58

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Weighted average common shares used to compute net income per share

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Basic

 

 

35,903

 

 

 

35,030

 

 

 

35,828

 

 

 

35,051

 

Diluted

 

 

36,753

 

 

 

36,016

 

 

 

36,741

 

 

 

35,995

 

 

 See accompanying notes to these condensed consolidated financial statements.

 

    SPS COMMERCE, INC.

4

Form 10-Q for the Quarterly Period ended June 30, 2021

 


Table of Contents

 

SPS COMMERCE, INC. AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Accumulated

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Additional

 

 

 

 

 

 

Other

 

 

Total

 

 

 

Common Stock

 

 

Treasury Stock

 

 

Paid-in

 

 

Retained

 

 

Comprehensive

 

 

Stockholders'

 

(In thousands, except shares) (Unaudited)

 

Shares

 

 

Amount

 

 

Shares

 

 

Amount

 

 

Capital

 

 

Earnings

 

 

Loss

 

 

Equity

 

Balances, March 31, 2020

 

 

34,992,825

 

 

$

36

 

 

 

1,481,623

 

 

$

(58,297

)

 

$

361,853

 

 

$

57,419

 

 

$

(5,823

)

 

$

355,188

 

Stock-based compensation

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4,628

 

 

 

 

 

 

 

 

 

4,628

 

Exercise of stock options and issuance of restricted stock

 

 

233,852

 

 

 

1

 

 

 

 

 

 

 

 

 

5,742

 

 

 

 

 

 

 

 

 

5,743

 

Employee stock purchase plan

 

 

31,068

 

 

 

 

 

 

 

 

 

 

 

 

1,463

 

 

 

 

 

 

 

 

 

1,463

 

Repurchases of common stock

 

 

(131,627

)

 

 

 

 

 

131,627

 

 

 

(6,950

)

 

 

 

 

 

 

 

 

 

 

 

(6,950

)

Net income

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

11,194

 

 

 

 

 

 

11,194

 

Foreign currency translation adjustments

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2,116

 

 

 

2,116

 

Unrealized gain on investments, net of tax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7

 

 

 

7

 

Reclassification of gain on investments into earnings, net of tax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(79

)

 

 

(79

)

Balances, June 30, 2020

 

 

35,126,118

 

 

$

37

 

 

 

1,613,250

 

 

$

(65,247

)

 

$

373,686

 

 

$

68,613

 

 

$

(3,779

)

 

$

373,310

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Balances, March 31, 2021

 

 

35,861,584

 

 

$

37

 

 

 

1,613,250

 

 

$

(65,247

)

 

$

402,860

 

 

$

103,690

 

 

$

(817

)

 

$

440,523

 

Stock-based compensation

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7,014

 

 

 

 

 

 

 

 

 

7,014

 

Exercise of stock options and issuance of restricted stock

 

 

36,756

 

 

 

1

 

 

 

 

 

 

 

 

 

1,227

 

 

 

 

 

 

 

 

 

1,228

 

Employee stock purchase plan

 

 

24,528

 

 

 

 

 

 

 

 

 

 

 

 

2,081

 

 

 

 

 

 

 

 

 

2,081

 

Repurchases of common stock

 

 

(63,515

)

 

 

 

 

 

63,515

 

 

 

(6,450

)

 

 

 

 

 

 

 

 

 

 

 

(6,450

)

Net income

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10,183

 

 

 

 

 

 

10,183

 

Foreign currency translation adjustments

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

172

 

 

 

172

 

Unrealized loss on investments, net of tax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(35

)

 

 

(35

)

Reclassification of loss on investments into earnings, net of tax

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

33

 

 

 

33

 

Balances, June 30, 2021

 

 

35,859,353

 

 

$

38

 

 

 

1,676,765

 

 

$

(71,697

)

 

$

413,182

 

 

$

113,873

 

 

$

(647

)

 

$

454,749

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Accumulated

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Additional

 

 

 

 

 

 

Other

 

 

Total

 

 

 

Common Stock

 

 

Treasury Stock

 

 

Paid-in

 

 

Retained

 

 

Comprehensive

 

 

Stockholders'

 

 

 

Shares

 

 

Amount

 

 

Shares

 

 

Amount

 

 

Capital

 

 

Earnings

 

 

Loss

 

 

Equity

 

Balances, December 31, 2019

 

 

34,863,271

 

 

$

36

 

 

 

1,241,348

 

 

$

(46,297

)

 

$

354,115

 

 

$

48,973

 

 

$

(1,951

)

 

$

354,876

 

Stock-based compensation