2020 Q1 Form 10-K Financial Statement
#000143774921013213 Filed on May 25, 2021
Income Statement
Concept | 2020 Q1 | 2019 Q4 | 2019 Q3 |
---|---|---|---|
Revenue | $74.29M | $59.92M | $69.94M |
YoY Change | 15.06% | -0.25% | -2.04% |
Cost Of Revenue | $52.60M | $42.22M | $49.93M |
YoY Change | 19.98% | 3.76% | 8.22% |
Gross Profit | $21.69M | $17.70M | $20.00M |
YoY Change | 4.64% | -8.69% | -20.8% |
Gross Profit Margin | 29.19% | 29.54% | 28.6% |
Selling, General & Admin | $12.62M | $9.200M | $11.06M |
YoY Change | 2.1% | -2.23% | -3.83% |
% of Gross Profit | 58.19% | 51.99% | 55.29% |
Research & Development | |||
YoY Change | |||
% of Gross Profit | |||
Depreciation & Amortization | $560.0K | $562.0K | $572.0K |
YoY Change | -1.75% | 1.08% | 3.62% |
% of Gross Profit | 2.58% | 3.18% | 2.86% |
Operating Expenses | $13.17M | $9.765M | $11.63M |
YoY Change | 1.93% | -2.04% | -3.49% |
Operating Profit | $8.513M | $7.932M | $8.371M |
YoY Change | 9.11% | -15.73% | -36.6% |
Interest Expense | $300.0K | $420.0K | $460.0K |
YoY Change | -45.45% | -17.65% | 6.98% |
% of Operating Profit | 3.52% | 5.3% | 5.5% |
Other Income/Expense, Net | $310.0K | $722.0K | $763.0K |
YoY Change | 19.23% | -5.37% | 11.71% |
Pretax Income | $9.120M | $8.654M | $9.134M |
YoY Change | 5.92% | -14.96% | -34.22% |
Income Tax | $2.120M | $1.800M | $2.469M |
% Of Pretax Income | 23.25% | 20.8% | 27.03% |
Net Earnings | $7.003M | $6.840M | $6.665M |
YoY Change | 5.79% | -12.16% | -38.01% |
Net Earnings / Revenue | 9.43% | 11.42% | 9.53% |
Basic Earnings Per Share | $0.34 | $0.33 | |
Diluted Earnings Per Share | $0.35 | $0.34 | $0.33 |
COMMON SHARES | |||
Basic Shares Outstanding | 20.17M | 19.98M | 19.96M |
Diluted Shares Outstanding | 19.99M | 19.97M |
Balance Sheet
Concept | 2020 Q1 | 2019 Q4 | 2019 Q3 |
---|---|---|---|
SHORT-TERM ASSETS | |||
Cash & Short-Term Investments | $103.8M | $92.40M | $94.90M |
YoY Change | 3.28% | -0.86% | 8.96% |
Cash & Equivalents | $103.8M | $92.37M | $94.90M |
Short-Term Investments | |||
Other Short-Term Assets | $3.500M | $4.200M | $2.800M |
YoY Change | 150.0% | 223.08% | 180.0% |
Inventory | $17.90M | $24.20M | $19.10M |
Prepaid Expenses | |||
Receivables | $3.843M | $2.052M | $1.466M |
Other Receivables | $0.00 | $0.00 | $0.00 |
Total Short-Term Assets | $129.0M | $122.8M | $118.3M |
YoY Change | 2.05% | -4.44% | -0.72% |
LONG-TERM ASSETS | |||
Property, Plant & Equipment | $25.45M | $25.92M | $26.41M |
YoY Change | -6.23% | -6.04% | -5.95% |
Goodwill | |||
YoY Change | |||
Intangibles | $860.0K | $860.0K | $860.0K |
YoY Change | 0.0% | 0.0% | 0.0% |
Long-Term Investments | |||
YoY Change | |||
Other Assets | |||
YoY Change | |||
Total Long-Term Assets | $26.31M | $26.78M | $27.27M |
YoY Change | -6.04% | -5.86% | -5.77% |
TOTAL ASSETS | |||
Total Short-Term Assets | $129.0M | $122.8M | $118.3M |
Total Long-Term Assets | $26.31M | $26.78M | $27.27M |
Total Assets | $155.3M | $149.5M | $145.5M |
YoY Change | 0.58% | -4.7% | -1.71% |
SHORT-TERM LIABILITIES | |||
YoY Change | |||
Accounts Payable | $19.66M | $16.64M | $15.16M |
YoY Change | 20.79% | -17.99% | 6.14% |
Accrued Expenses | $4.200M | $3.200M | $2.900M |
YoY Change | 75.0% | 14.29% | 3.57% |
Deferred Revenue | |||
YoY Change | |||
Short-Term Debt | $0.00 | $0.00 | $0.00 |
YoY Change | |||
Long-Term Debt Due | |||
YoY Change | |||
Total Short-Term Liabilities | $24.34M | $20.73M | $18.55M |
YoY Change | 30.69% | -10.09% | 8.84% |
LONG-TERM LIABILITIES | |||
Long-Term Debt | $0.00 | $0.00 | $0.00 |
YoY Change | |||
Other Long-Term Liabilities | |||
YoY Change | |||
Total Long-Term Liabilities | $0.00 | $0.00 | $0.00 |
YoY Change | |||
TOTAL LIABILITIES | |||
Total Short-Term Liabilities | $24.34M | $20.73M | $18.55M |
Total Long-Term Liabilities | $0.00 | $0.00 | $0.00 |
Total Liabilities | $25.31M | $21.83M | $19.95M |
YoY Change | 28.19% | -9.25% | 9.41% |
SHAREHOLDERS EQUITY | |||
Retained Earnings | $126.2M | $124.6M | $123.2M |
YoY Change | 3.28% | 2.88% | 3.6% |
Common Stock | $20.00K | $20.00K | $20.00K |
YoY Change | -4.76% | -4.76% | -4.76% |
Preferred Stock | |||
YoY Change | |||
Treasury Stock (at cost) | |||
YoY Change | |||
Treasury Stock Shares | |||
Shareholders Equity | $130.0M | $127.7M | $125.6M |
YoY Change | |||
Total Liabilities & Shareholders Equity | $155.3M | $149.5M | $145.5M |
YoY Change | 0.58% | -4.7% | -1.71% |
Cashflow Statement
Concept | 2020 Q1 | 2019 Q4 | 2019 Q3 |
---|---|---|---|
OPERATING ACTIVITIES | |||
Net Income | $7.003M | $6.840M | $6.665M |
YoY Change | 5.79% | -12.16% | -38.01% |
Depreciation, Depletion And Amortization | $560.0K | $562.0K | $572.0K |
YoY Change | -1.75% | 1.08% | 3.62% |
Cash From Operating Activities | $17.26M | $4.290M | $17.25M |
YoY Change | 31.66% | -63.11% | -1158.28% |
INVESTING ACTIVITIES | |||
Capital Expenditures | -$480.0K | -$1.410M | -$230.0K |
YoY Change | 336.36% | 2250.0% | 64.29% |
Acquisitions | |||
YoY Change | |||
Other Investing Activities | |||
YoY Change | |||
Cash From Investing Activities | -$480.0K | -$1.410M | -$230.0K |
YoY Change | 336.36% | 2250.0% | 64.29% |
FINANCING ACTIVITIES | |||
Cash Dividend Paid | |||
YoY Change | |||
Common Stock Issuance & Retirement, Net | |||
YoY Change | |||
Debt Paid & Issued, Net | |||
YoY Change | |||
Cash From Financing Activities | -5.390M | -5.400M | -5.530M |
YoY Change | -4.43% | -2.35% | -2.3% |
NET CHANGE | |||
Cash From Operating Activities | 17.26M | 4.290M | 17.25M |
Cash From Investing Activities | -480.0K | -1.410M | -230.0K |
Cash From Financing Activities | -5.390M | -5.400M | -5.530M |
Net Change In Cash | 11.39M | -2.520M | 11.49M |
YoY Change | 54.76% | -141.72% | -254.64% |
FREE CASH FLOW | |||
Cash From Operating Activities | $17.26M | $4.290M | $17.25M |
Capital Expenditures | -$480.0K | -$1.410M | -$230.0K |
Free Cash Flow | $17.74M | $5.700M | $17.48M |
YoY Change | 34.19% | -51.24% | -1273.15% |
Facts In Submission
Frame | Concept Type | Concept / XBRL Key | Value | Unit |
---|---|---|---|---|
CY2021Q2 | dei |
Entity Common Stock Shares Outstanding
EntityCommonStockSharesOutstanding
|
20269313 | |
CY2021Q1 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
39000 | USD |
CY2020Q1 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
59000 | USD |
CY2021Q1 | us-gaap |
Commitments And Contingencies
CommitmentsAndContingencies
|
USD | |
CY2020Q1 | us-gaap |
Commitments And Contingencies
CommitmentsAndContingencies
|
USD | |
CY2021Q1 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.001 | |
CY2020Q1 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
0.001 | |
CY2021Q1 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
5000000 | |
CY2020Q1 | us-gaap |
Preferred Stock Shares Authorized
PreferredStockSharesAuthorized
|
5000000 | |
CY2021Q1 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
3000 | |
CY2021Q1 | us-gaap |
Preferred Stock Shares Outstanding
PreferredStockSharesOutstanding
|
3000 | |
CY2020Q1 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
3000 | |
CY2020Q1 | us-gaap |
Preferred Stock Shares Outstanding
PreferredStockSharesOutstanding
|
3000 | |
CY2021Q1 | us-gaap |
Preferred Stock Liquidation Preference
PreferredStockLiquidationPreference
|
4 | |
CY2020Q1 | us-gaap |
Preferred Stock Liquidation Preference
PreferredStockLiquidationPreference
|
4 | |
CY2021Q1 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.001 | |
CY2020Q1 | us-gaap |
Common Stock Par Or Stated Value Per Share
CommonStockParOrStatedValuePerShare
|
0.001 | |
CY2021Q1 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
40000000 | |
CY2020Q1 | us-gaap |
Common Stock Shares Authorized
CommonStockSharesAuthorized
|
40000000 | |
CY2021Q1 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
20269000 | |
CY2021Q1 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
20269000 | |
CY2020Q1 | us-gaap |
Common Stock Shares Issued
CommonStockSharesIssued
|
20166000 | |
CY2020Q1 | us-gaap |
Common Stock Shares Outstanding
CommonStockSharesOutstanding
|
20166000 | |
CY2020 | us-gaap |
Other Comprehensive Income Unrealized Holding Gain Loss On Securities Arising During Period Net Of Tax
OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
|
0 | USD |
CY2019 | us-gaap |
Other Comprehensive Income Unrealized Holding Gain Loss On Securities Arising During Period Net Of Tax
OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
|
0 | USD |
CY1998Q2 | us-gaap |
Preferred Stock Par Or Stated Value Per Share
PreferredStockParOrStatedValuePerShare
|
1 | |
CY2010Q4 | pets |
Stock Repurchase Program Additional Authorized Amount
StockRepurchaseProgramAdditionalAuthorizedAmount
|
20000000.0 | USD |
CY2011Q3 | pets |
Stock Repurchase Program Additional Authorized Amount
StockRepurchaseProgramAdditionalAuthorizedAmount
|
20000000.0 | USD |
CY2021 | us-gaap |
Stock Repurchased And Retired During Period Shares
StockRepurchasedAndRetiredDuringPeriodShares
|
0 | |
CY2020 | us-gaap |
Deferred Compensation Arrangement With Individual Requisite Service Period1
DeferredCompensationArrangementWithIndividualRequisiteServicePeriod1
|
P1Y | |
CY2021Q1 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
118718000 | USD |
CY2020Q1 | us-gaap |
Cash And Cash Equivalents At Carrying Value
CashAndCashEquivalentsAtCarryingValue
|
103762000 | USD |
CY2021Q1 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
2587000 | USD |
CY2020Q1 | us-gaap |
Accounts Receivable Net Current
AccountsReceivableNetCurrent
|
3843000 | USD |
CY2021Q1 | us-gaap |
Inventory Finished Goods
InventoryFinishedGoods
|
34420000 | USD |
CY2020Q1 | us-gaap |
Inventory Finished Goods
InventoryFinishedGoods
|
17884000 | USD |
CY2021Q1 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
4503000 | USD |
CY2020Q1 | us-gaap |
Prepaid Expense And Other Assets Current
PrepaidExpenseAndOtherAssetsCurrent
|
3529000 | USD |
CY2021Q1 | us-gaap |
Prepaid Taxes
PrepaidTaxes
|
959000 | USD |
CY2020Q1 | us-gaap |
Prepaid Taxes
PrepaidTaxes
|
0 | USD |
CY2021Q1 | us-gaap |
Assets Current
AssetsCurrent
|
161187000 | USD |
CY2020Q1 | us-gaap |
Assets Current
AssetsCurrent
|
129018000 | USD |
CY2021Q1 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
25450000 | USD |
CY2020Q1 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
25445000 | USD |
CY2021Q1 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
860000 | USD |
CY2020Q1 | us-gaap |
Intangible Assets Net Excluding Goodwill
IntangibleAssetsNetExcludingGoodwill
|
860000 | USD |
CY2021Q1 | us-gaap |
Assets Noncurrent
AssetsNoncurrent
|
26310000 | USD |
CY2020Q1 | us-gaap |
Assets Noncurrent
AssetsNoncurrent
|
26305000 | USD |
CY2021Q1 | us-gaap |
Assets
Assets
|
187497000 | USD |
CY2020Q1 | us-gaap |
Assets
Assets
|
155323000 | USD |
CY2021Q1 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
39548000 | USD |
CY2020Q1 | us-gaap |
Accounts Payable Current
AccountsPayableCurrent
|
19658000 | USD |
CY2021Q1 | pets |
Accrued Expenses And Other Current Liabilities
AccruedExpensesAndOtherCurrentLiabilities
|
5387000 | USD |
CY2020Q1 | pets |
Accrued Expenses And Other Current Liabilities
AccruedExpensesAndOtherCurrentLiabilities
|
4214000 | USD |
CY2021Q1 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
0 | USD |
CY2020Q1 | us-gaap |
Accrued Income Taxes Current
AccruedIncomeTaxesCurrent
|
471000 | USD |
CY2021Q1 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
44935000 | USD |
CY2020Q1 | us-gaap |
Liabilities Current
LiabilitiesCurrent
|
24343000 | USD |
CY2021Q1 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
1281000 | USD |
CY2020Q1 | us-gaap |
Deferred Income Tax Liabilities Net
DeferredIncomeTaxLiabilitiesNet
|
970000 | USD |
CY2021Q1 | us-gaap |
Liabilities
Liabilities
|
46216000 | USD |
CY2020Q1 | us-gaap |
Liabilities
Liabilities
|
25313000 | USD |
CY2021Q1 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
9000 | USD |
CY2020Q1 | us-gaap |
Preferred Stock Value
PreferredStockValue
|
9000 | USD |
CY2021Q1 | us-gaap |
Common Stock Value
CommonStockValue
|
20000 | USD |
CY2020Q1 | us-gaap |
Common Stock Value
CommonStockValue
|
20000 | USD |
CY2021Q1 | us-gaap |
Additional Paid In Capital
AdditionalPaidInCapital
|
7111000 | USD |
CY2020Q1 | us-gaap |
Additional Paid In Capital
AdditionalPaidInCapital
|
3804000 | USD |
CY2021Q1 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
134141000 | USD |
CY2020Q1 | us-gaap |
Retained Earnings Accumulated Deficit
RetainedEarningsAccumulatedDeficit
|
126177000 | USD |
CY2021Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
141281000 | USD |
CY2020Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
130010000 | USD |
CY2021Q1 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
187497000 | USD |
CY2020Q1 | us-gaap |
Liabilities And Stockholders Equity
LiabilitiesAndStockholdersEquity
|
155323000 | USD |
CY2021 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
309215000 | USD |
CY2020 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
284125000 | USD |
CY2019 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
283419000 | USD |
CY2021 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
219267000 | USD |
CY2020 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
202879000 | USD |
CY2019 | us-gaap |
Cost Of Goods And Services Sold
CostOfGoodsAndServicesSold
|
188105000 | USD |
CY2021 | us-gaap |
Gross Profit
GrossProfit
|
89948000 | USD |
CY2020 | us-gaap |
Gross Profit
GrossProfit
|
81246000 | USD |
CY2019 | us-gaap |
Gross Profit
GrossProfit
|
95314000 | USD |
CY2021 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
28293000 | USD |
CY2020 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
25264000 | USD |
CY2019 | us-gaap |
General And Administrative Expense
GeneralAndAdministrativeExpense
|
24767000 | USD |
CY2021 | us-gaap |
Advertising Expense
AdvertisingExpense
|
21641000 | USD |
CY2020 | us-gaap |
Advertising Expense
AdvertisingExpense
|
22748000 | USD |
CY2019 | us-gaap |
Advertising Expense
AdvertisingExpense
|
22148000 | USD |
CY2021 | us-gaap |
Depreciation
Depreciation
|
2427000 | USD |
CY2020 | us-gaap |
Depreciation
Depreciation
|
2257000 | USD |
CY2019 | us-gaap |
Depreciation
Depreciation
|
2225000 | USD |
CY2021 | us-gaap |
Operating Expenses
OperatingExpenses
|
52361000 | USD |
CY2020 | us-gaap |
Operating Expenses
OperatingExpenses
|
50269000 | USD |
CY2019 | us-gaap |
Operating Expenses
OperatingExpenses
|
49140000 | USD |
CY2021 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
37587000 | USD |
CY2020 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
30977000 | USD |
CY2019 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
46174000 | USD |
CY2021 | us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
314000 | USD |
CY2020 | us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
1747000 | USD |
CY2019 | us-gaap |
Investment Income Interest
InvestmentIncomeInterest
|
1864000 | USD |
CY2021 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
1315000 | USD |
CY2020 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
1169000 | USD |
CY2019 | us-gaap |
Other Nonoperating Income Expense
OtherNonoperatingIncomeExpense
|
1083000 | USD |
CY2021 | us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
1629000 | USD |
CY2020 | us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
2916000 | USD |
CY2019 | us-gaap |
Nonoperating Income Expense
NonoperatingIncomeExpense
|
2947000 | USD |
CY2021 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
39216000 | USD |
CY2020 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
33893000 | USD |
CY2019 | us-gaap |
Income Loss From Continuing Operations Before Income Taxes Extraordinary Items Noncontrolling Interest
IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
|
49121000 | USD |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
8613000 | USD |
CY2020 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
8042000 | USD |
CY2019 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
11381000 | USD |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
30603000 | USD |
CY2020 | us-gaap |
Net Income Loss
NetIncomeLoss
|
25851000 | USD |
CY2019 | us-gaap |
Net Income Loss
NetIncomeLoss
|
37740000 | USD |
CY2021 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.53 | |
CY2020 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.29 | |
CY2019 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.84 | |
CY2021 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.52 | |
CY2020 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.29 | |
CY2019 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.84 | |
CY2021 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
20060000 | |
CY2020 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
20041000 | |
CY2019 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
20461000 | |
CY2021 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
20119000 | |
CY2020 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
20055000 | |
CY2019 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
20491000 | |
CY2021 | us-gaap |
Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
|
1.12 | |
CY2020 | us-gaap |
Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
|
1.08 | |
CY2019 | us-gaap |
Common Stock Dividends Per Share Declared
CommonStockDividendsPerShareDeclared
|
1.06 | |
CY2018Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
115731000 | USD |
CY2019 | us-gaap |
Stock Issued During Period Value Restricted Stock Award Net Of Forfeitures
StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
|
0 | USD |
CY2019 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
3097000 | USD |
CY2019 | us-gaap |
Dividends Common Stock
DividendsCommonStock
|
21888000 | USD |
CY2019 | us-gaap |
Net Income Loss
NetIncomeLoss
|
37740000 | USD |
CY2019Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
134680000 | USD |
CY2020 | us-gaap |
Stock Issued During Period Value Restricted Stock Award Net Of Forfeitures
StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
|
0 | USD |
CY2020 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
2822000 | USD |
CY2020 | us-gaap |
Stock Repurchased And Retired During Period Value
StockRepurchasedAndRetiredDuringPeriodValue
|
11497000 | USD |
CY2020 | us-gaap |
Dividends Common Stock
DividendsCommonStock
|
21846000 | USD |
CY2020 | us-gaap |
Net Income Loss
NetIncomeLoss
|
25851000 | USD |
CY2020Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
130010000 | USD |
CY2021 | us-gaap |
Stock Issued During Period Value Restricted Stock Award Net Of Forfeitures
StockIssuedDuringPeriodValueRestrictedStockAwardNetOfForfeitures
|
0 | USD |
CY2021 | us-gaap |
Adjustments To Additional Paid In Capital Sharebased Compensation Requisite Service Period Recognition Value
AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue
|
3307000 | USD |
CY2021 | us-gaap |
Dividends Common Stock
DividendsCommonStock
|
22639000 | USD |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
30603000 | USD |
CY2021Q1 | us-gaap |
Stockholders Equity
StockholdersEquity
|
141281000 | USD |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
30603000 | USD |
CY2020 | us-gaap |
Net Income Loss
NetIncomeLoss
|
25851000 | USD |
CY2019 | us-gaap |
Net Income Loss
NetIncomeLoss
|
37740000 | USD |
CY2021 | us-gaap |
Depreciation
Depreciation
|
2427000 | USD |
CY2020 | us-gaap |
Depreciation
Depreciation
|
2257000 | USD |
CY2019 | us-gaap |
Depreciation
Depreciation
|
2225000 | USD |
CY2021 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
3307000 | USD |
CY2020 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
2822000 | USD |
CY2019 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
3097000 | USD |
CY2021 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
311000 | USD |
CY2020 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
-151000 | USD |
CY2019 | us-gaap |
Deferred Income Tax Expense Benefit
DeferredIncomeTaxExpenseBenefit
|
125000 | USD |
CY2021 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
130000 | USD |
CY2020 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
191000 | USD |
CY2019 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
85000 | USD |
CY2021 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
-1126000 | USD |
CY2020 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
1492000 | USD |
CY2019 | us-gaap |
Increase Decrease In Accounts Receivable
IncreaseDecreaseInAccountsReceivable
|
335000 | USD |
CY2021 | us-gaap |
Increase Decrease In Finished Goods And Work In Process Inventories
IncreaseDecreaseInFinishedGoodsAndWorkInProcessInventories
|
16536000 | USD |
CY2020 | us-gaap |
Increase Decrease In Finished Goods And Work In Process Inventories
IncreaseDecreaseInFinishedGoodsAndWorkInProcessInventories
|
-3486000 | USD |
CY2019 | us-gaap |
Increase Decrease In Finished Goods And Work In Process Inventories
IncreaseDecreaseInFinishedGoodsAndWorkInProcessInventories
|
-1967000 | USD |
CY2021 | us-gaap |
Increase Decrease In Prepaid Taxes
IncreaseDecreaseInPrepaidTaxes
|
959000 | USD |
CY2020 | us-gaap |
Increase Decrease In Prepaid Taxes
IncreaseDecreaseInPrepaidTaxes
|
-582000 | USD |
CY2019 | us-gaap |
Increase Decrease In Prepaid Taxes
IncreaseDecreaseInPrepaidTaxes
|
-206000 | USD |
CY2021 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
974000 | USD |
CY2020 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
376000 | USD |
CY2019 | us-gaap |
Increase Decrease In Prepaid Deferred Expense And Other Assets
IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
|
526000 | USD |
CY2021 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
19890000 | USD |
CY2020 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
3383000 | USD |
CY2019 | us-gaap |
Increase Decrease In Accounts Payable
IncreaseDecreaseInAccountsPayable
|
1001000 | USD |
CY2021 | us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
1221000 | USD |
CY2020 | us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
1820000 | USD |
CY2019 | us-gaap |
Increase Decrease In Accrued Liabilities And Other Operating Liabilities
IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities
|
-447000 | USD |
CY2021 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
-471000 | USD |
CY2020 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
471000 | USD |
CY2019 | us-gaap |
Increase Decrease In Accrued Income Taxes Payable
IncreaseDecreaseInAccruedIncomeTaxesPayable
|
0 | USD |
CY2021 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
40075000 | USD |
CY2020 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
38844000 | USD |
CY2019 | us-gaap |
Net Cash Provided By Used In Operating Activities
NetCashProvidedByUsedInOperatingActivities
|
45138000 | USD |
CY2021 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
2432000 | USD |
CY2020 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
2311000 | USD |
CY2019 | us-gaap |
Payments To Acquire Property Plant And Equipment
PaymentsToAcquirePropertyPlantAndEquipment
|
620000 | USD |
CY2021 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-2432000 | USD |
CY2020 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-2311000 | USD |
CY2019 | us-gaap |
Net Cash Provided By Used In Investing Activities
NetCashProvidedByUsedInInvestingActivities
|
-620000 | USD |
CY2021 | us-gaap |
Payments Of Dividends Common Stock
PaymentsOfDividendsCommonStock
|
22687000 | USD |
CY2020 | us-gaap |
Payments Of Dividends Common Stock
PaymentsOfDividendsCommonStock
|
21803000 | USD |
CY2019 | us-gaap |
Payments Of Dividends Common Stock
PaymentsOfDividendsCommonStock
|
21925000 | USD |
CY2021 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
-0 | USD |
CY2020 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
11497000 | USD |
CY2019 | us-gaap |
Payments For Repurchase Of Common Stock
PaymentsForRepurchaseOfCommonStock
|
-0 | USD |
CY2021 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-22687000 | USD |
CY2020 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-33300000 | USD |
CY2019 | us-gaap |
Net Cash Provided By Used In Financing Activities
NetCashProvidedByUsedInFinancingActivities
|
-21925000 | USD |
CY2021 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
14956000 | USD |
CY2020 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
3233000 | USD |
CY2019 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Period Increase Decrease Including Exchange Rate Effect
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
|
22593000 | USD |
CY2020Q1 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
103762000 | USD |
CY2019Q1 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
100529000 | USD |
CY2018Q1 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
77936000 | USD |
CY2021Q1 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
118718000 | USD |
CY2020Q1 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
103762000 | USD |
CY2019Q1 | us-gaap |
Cash Cash Equivalents Restricted Cash And Restricted Cash Equivalents Including Disposal Group And Discontinued Operations
CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
|
100529000 | USD |
CY2021 | us-gaap |
Income Taxes Paid
IncomeTaxesPaid
|
10018000 | USD |
CY2020 | us-gaap |
Income Taxes Paid
IncomeTaxesPaid
|
7140000 | USD |
CY2019 | us-gaap |
Income Taxes Paid
IncomeTaxesPaid
|
11051000 | USD |
CY2021 | pets |
Transfer Of Property And Equipment To Current Assets
TransferOfPropertyAndEquipmentToCurrentAssets
|
0 | USD |
CY2020 | pets |
Transfer Of Property And Equipment To Current Assets
TransferOfPropertyAndEquipmentToCurrentAssets
|
1745000 | USD |
CY2019 | pets |
Transfer Of Property And Equipment To Current Assets
TransferOfPropertyAndEquipmentToCurrentAssets
|
0 | USD |
CY2021 | us-gaap |
Liabilities Assumed1
LiabilitiesAssumed1
|
198000 | USD |
CY2020 | us-gaap |
Liabilities Assumed1
LiabilitiesAssumed1
|
246000 | USD |
CY2019 | us-gaap |
Liabilities Assumed1
LiabilitiesAssumed1
|
203000 | USD |
CY2021 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
309215000 | USD |
CY2021 | pets |
Revenue From Contract With Customer Percentage
RevenueFromContractWithCustomerPercentage
|
1.000 | pure |
CY2020 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
284125000 | USD |
CY2020 | pets |
Revenue From Contract With Customer Percentage
RevenueFromContractWithCustomerPercentage
|
1.000 | pure |
CY2021 | pets |
Revenue From Contract With Customer Variance
RevenueFromContractWithCustomerVariance
|
25090000 | USD |
CY2021 | pets |
Revenue From Contract With Customer Variance Percentage
RevenueFromContractWithCustomerVariancePercentage
|
0.088 | pure |
CY2021 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
309215000 | USD |
CY2021 | pets |
Revenue From Contract With Customer Percentage
RevenueFromContractWithCustomerPercentage
|
1.000 | pure |
CY2020 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
284125000 | USD |
CY2020 | pets |
Revenue From Contract With Customer Percentage
RevenueFromContractWithCustomerPercentage
|
1.000 | pure |
CY2021 | pets |
Revenue From Contract With Customer Variance
RevenueFromContractWithCustomerVariance
|
25090000 | USD |
CY2021 | pets |
Revenue From Contract With Customer Variance Percentage
RevenueFromContractWithCustomerVariancePercentage
|
0.088 | pure |
CY2020 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
284125000 | USD |
CY2020 | pets |
Revenue From Contract With Customer Percentage
RevenueFromContractWithCustomerPercentage
|
1.000 | pure |
CY2019 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
283419000 | USD |
CY2019 | pets |
Revenue From Contract With Customer Percentage
RevenueFromContractWithCustomerPercentage
|
1.000 | pure |
CY2020 | pets |
Revenue From Contract With Customer Variance
RevenueFromContractWithCustomerVariance
|
706000 | USD |
CY2020 | pets |
Revenue From Contract With Customer Variance Percentage
RevenueFromContractWithCustomerVariancePercentage
|
0.002 | pure |
CY2020 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
284125000 | USD |
CY2020 | pets |
Revenue From Contract With Customer Percentage
RevenueFromContractWithCustomerPercentage
|
1.000 | pure |
CY2019 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
283419000 | USD |
CY2019 | pets |
Revenue From Contract With Customer Percentage
RevenueFromContractWithCustomerPercentage
|
1.000 | pure |
CY2020 | pets |
Revenue From Contract With Customer Variance
RevenueFromContractWithCustomerVariance
|
706000 | USD |
CY2020 | pets |
Revenue From Contract With Customer Variance Percentage
RevenueFromContractWithCustomerVariancePercentage
|
0.002 | pure |
CY2021Q1 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
39000 | USD |
CY2020Q1 | us-gaap |
Allowance For Doubtful Accounts Receivable Current
AllowanceForDoubtfulAccountsReceivableCurrent
|
59000 | USD |
CY2021 | us-gaap |
Use Of Estimates
UseOfEstimates
|
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 36pt;"><b>Use of Estimates</b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 36pt;">The preparation of consolidated financial statements in conformity with accounting principles generally accepted in the United States of America requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and disclosure of contingent assets and liabilities at the date of the consolidated financial statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> | |
CY2021Q1 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
86000 | USD |
CY2020Q1 | us-gaap |
Inventory Valuation Reserves
InventoryValuationReserves
|
45000 | USD |
CY2021 | us-gaap |
Other Comprehensive Income Unrealized Holding Gain Loss On Securities Arising During Period Net Of Tax
OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax
|
0 | USD |
CY2021 | us-gaap |
Concentration Risk Credit Risk
ConcentrationRiskCreditRisk
|
<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;text-indent:36pt;"><b>Business Concentrations</b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 36pt;">The Company purchases its products from a variety of sources, including certain manufacturers, domestic distributors, and wholesalers. We have multiple suppliers for each of our products to obtain the lowest cost. There were five suppliers from whom we purchased approximately 80% of all products in fiscal <em style="font: inherit;">2021.</em> There were three suppliers from whom we purchased approximately 60% of all products in fiscal <em style="font: inherit;">2020.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> | |
CY2021Q1 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
35778000 | USD |
CY2020Q1 | us-gaap |
Property Plant And Equipment Gross
PropertyPlantAndEquipmentGross
|
36099000 | USD |
CY2021Q1 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
10328000 | USD |
CY2020Q1 | us-gaap |
Accumulated Depreciation Depletion And Amortization Property Plant And Equipment
AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
|
10654000 | USD |
CY2021Q1 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
25450000 | USD |
CY2020Q1 | us-gaap |
Property Plant And Equipment Net
PropertyPlantAndEquipmentNet
|
25445000 | USD |
CY2020Q1 | us-gaap |
Valuation Allowances And Reserves Balance
ValuationAllowancesAndReservesBalance
|
59000 | USD |
CY2019Q1 | us-gaap |
Valuation Allowances And Reserves Balance
ValuationAllowancesAndReservesBalance
|
39000 | USD |
CY2018Q1 | us-gaap |
Valuation Allowances And Reserves Balance
ValuationAllowancesAndReservesBalance
|
35000 | USD |
CY2021 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
130000 | USD |
CY2020 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
191000 | USD |
CY2019 | us-gaap |
Provision For Doubtful Accounts
ProvisionForDoubtfulAccounts
|
85000 | USD |
CY2021 | us-gaap |
Valuation Allowances And Reserves Deductions
ValuationAllowancesAndReservesDeductions
|
150000 | USD |
CY2020 | us-gaap |
Valuation Allowances And Reserves Deductions
ValuationAllowancesAndReservesDeductions
|
171000 | USD |
CY2019 | us-gaap |
Valuation Allowances And Reserves Deductions
ValuationAllowancesAndReservesDeductions
|
81000 | USD |
CY2021Q1 | us-gaap |
Valuation Allowances And Reserves Balance
ValuationAllowancesAndReservesBalance
|
39000 | USD |
CY2020Q1 | us-gaap |
Valuation Allowances And Reserves Balance
ValuationAllowancesAndReservesBalance
|
59000 | USD |
CY2019Q1 | us-gaap |
Valuation Allowances And Reserves Balance
ValuationAllowancesAndReservesBalance
|
39000 | USD |
CY2021Q1 | us-gaap |
Sales And Excise Tax Payable Current
SalesAndExciseTaxPayableCurrent
|
1063000 | USD |
CY2020Q1 | us-gaap |
Sales And Excise Tax Payable Current
SalesAndExciseTaxPayableCurrent
|
627000 | USD |
CY2021Q1 | pets |
Accrued Credit Card Fees Current
AccruedCreditCardFeesCurrent
|
456000 | USD |
CY2020Q1 | pets |
Accrued Credit Card Fees Current
AccruedCreditCardFeesCurrent
|
494000 | USD |
CY2021Q1 | us-gaap |
Accrued Employee Benefits Current
AccruedEmployeeBenefitsCurrent
|
1525000 | USD |
CY2020Q1 | us-gaap |
Accrued Employee Benefits Current
AccruedEmployeeBenefitsCurrent
|
1242000 | USD |
CY2021Q1 | pets |
Accrued Merchandise Credits And Rewards Current
AccruedMerchandiseCreditsAndRewardsCurrent
|
1413000 | USD |
CY2020Q1 | pets |
Accrued Merchandise Credits And Rewards Current
AccruedMerchandiseCreditsAndRewardsCurrent
|
674000 | USD |
CY2021Q1 | us-gaap |
Accrued Professional Fees Current
AccruedProfessionalFeesCurrent
|
290000 | USD |
CY2020Q1 | us-gaap |
Accrued Professional Fees Current
AccruedProfessionalFeesCurrent
|
267000 | USD |
CY2021Q1 | pets |
Accrued Sales Returns And Allowances Current
AccruedSalesReturnsAndAllowancesCurrent
|
220000 | USD |
CY2020Q1 | pets |
Accrued Sales Returns And Allowances Current
AccruedSalesReturnsAndAllowancesCurrent
|
244000 | USD |
CY2021Q1 | us-gaap |
Dividends Payable Current
DividendsPayableCurrent
|
198000 | USD |
CY2020Q1 | us-gaap |
Dividends Payable Current
DividendsPayableCurrent
|
246000 | USD |
CY2021Q1 | us-gaap |
Accrual For Taxes Other Than Income Taxes Current And Noncurrent
AccrualForTaxesOtherThanIncomeTaxesCurrentAndNoncurrent
|
114000 | USD |
CY2020Q1 | us-gaap |
Accrual For Taxes Other Than Income Taxes Current And Noncurrent
AccrualForTaxesOtherThanIncomeTaxesCurrentAndNoncurrent
|
112000 | USD |
CY2021Q1 | us-gaap |
Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
|
108000 | USD |
CY2020Q1 | us-gaap |
Other Accrued Liabilities Current
OtherAccruedLiabilitiesCurrent
|
308000 | USD |
CY2021Q1 | pets |
Accrued Expenses And Other Current Liabilities
AccruedExpensesAndOtherCurrentLiabilities
|
5387000 | USD |
CY2020Q1 | pets |
Accrued Expenses And Other Current Liabilities
AccruedExpensesAndOtherCurrentLiabilities
|
4214000 | USD |
CY2021Q1 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Accrued Liabilities
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
|
406000 | USD |
CY2020Q1 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals Accrued Liabilities
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities
|
287000 | USD |
CY2021Q1 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Employee Compensation
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation
|
321000 | USD |
CY2020Q1 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Compensation And Benefits Employee Compensation
DeferredTaxAssetsTaxDeferredExpenseCompensationAndBenefitsEmployeeCompensation
|
469000 | USD |
CY2021Q1 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccruals
|
29000 | USD |
CY2020Q1 | us-gaap |
Deferred Tax Assets Tax Deferred Expense Reserves And Accruals
DeferredTaxAssetsTaxDeferredExpenseReservesAndAccruals
|
24000 | USD |
CY2021Q1 | us-gaap |
Deferred Tax Assets Net
DeferredTaxAssetsNet
|
756000 | USD |
CY2020Q1 | us-gaap |
Deferred Tax Assets Net
DeferredTaxAssetsNet
|
780000 | USD |
CY2021Q1 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
2037000 | USD |
CY2020Q1 | us-gaap |
Deferred Tax Liabilities Property Plant And Equipment
DeferredTaxLiabilitiesPropertyPlantAndEquipment
|
1750000 | USD |
CY2021Q1 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
1281000 | USD |
CY2020Q1 | us-gaap |
Deferred Tax Liabilities
DeferredTaxLiabilities
|
970000 | USD |
CY2021 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
7446000 | USD |
CY2020 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
7352000 | USD |
CY2019 | us-gaap |
Current Federal Tax Expense Benefit
CurrentFederalTaxExpenseBenefit
|
9718000 | USD |
CY2021 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
856000 | USD |
CY2020 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
841000 | USD |
CY2019 | us-gaap |
Current State And Local Tax Expense Benefit
CurrentStateAndLocalTaxExpenseBenefit
|
1538000 | USD |
CY2021 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
8302000 | USD |
CY2020 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
8193000 | USD |
CY2019 | us-gaap |
Current Income Tax Expense Benefit
CurrentIncomeTaxExpenseBenefit
|
11256000 | USD |
CY2021 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
279000 | USD |
CY2020 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
-135000 | USD |
CY2019 | us-gaap |
Deferred Federal Income Tax Expense Benefit
DeferredFederalIncomeTaxExpenseBenefit
|
108000 | USD |
CY2021 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
32000 | USD |
CY2020 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
-16000 | USD |
CY2019 | us-gaap |
Deferred State And Local Income Tax Expense Benefit
DeferredStateAndLocalIncomeTaxExpenseBenefit
|
17000 | USD |
CY2021 | us-gaap |
Deferred Income Taxes And Tax Credits
DeferredIncomeTaxesAndTaxCredits
|
311000 | USD |
CY2020 | us-gaap |
Deferred Income Taxes And Tax Credits
DeferredIncomeTaxesAndTaxCredits
|
-151000 | USD |
CY2019 | us-gaap |
Deferred Income Taxes And Tax Credits
DeferredIncomeTaxesAndTaxCredits
|
125000 | USD |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
8613000 | USD |
CY2020 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
8042000 | USD |
CY2019 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
11381000 | USD |
CY2021 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
8235000 | USD |
CY2020 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
7118000 | USD |
CY2019 | us-gaap |
Income Tax Reconciliation Income Tax Expense Benefit At Federal Statutory Income Tax Rate
IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate
|
10315000 | USD |
CY2021 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
708000 | USD |
CY2020 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
649000 | USD |
CY2019 | us-gaap |
Income Tax Reconciliation State And Local Income Taxes
IncomeTaxReconciliationStateAndLocalIncomeTaxes
|
1233000 | USD |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation Share Based Compensation Excess Tax Benefit Amount
EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
|
-135000 | USD |
CY2020 | us-gaap |
Effective Income Tax Rate Reconciliation Share Based Compensation Excess Tax Benefit Amount
EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
|
322000 | USD |
CY2019 | us-gaap |
Effective Income Tax Rate Reconciliation Share Based Compensation Excess Tax Benefit Amount
EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
|
-176000 | USD |
CY2021 | us-gaap |
Income Tax Reconciliation Other Reconciling Items
IncomeTaxReconciliationOtherReconcilingItems
|
-195000 | USD |
CY2020 | us-gaap |
Income Tax Reconciliation Other Reconciling Items
IncomeTaxReconciliationOtherReconcilingItems
|
-47000 | USD |
CY2019 | us-gaap |
Income Tax Reconciliation Other Reconciling Items
IncomeTaxReconciliationOtherReconcilingItems
|
9000 | USD |
CY2021 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
8613000 | USD |
CY2020 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
8042000 | USD |
CY2019 | us-gaap |
Income Tax Expense Benefit
IncomeTaxExpenseBenefit
|
11381000 | USD |
CY2021 | us-gaap |
Effective Income Tax Rate Reconciliation Share Based Compensation Excess Tax Benefit Amount
EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
|
-135000 | USD |
CY2021 | us-gaap |
Tax Adjustments Settlements And Unusual Provisions
TaxAdjustmentsSettlementsAndUnusualProvisions
|
-194000 | USD |
CY2020 | us-gaap |
Effective Income Tax Rate Reconciliation Share Based Compensation Excess Tax Benefit Amount
EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
|
322000 | USD |
CY2020 | us-gaap |
Tax Adjustments Settlements And Unusual Provisions
TaxAdjustmentsSettlementsAndUnusualProvisions
|
-93000 | USD |
CY2019 | us-gaap |
Effective Income Tax Rate Reconciliation Share Based Compensation Excess Tax Benefit Amount
EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount
|
-176000 | USD |
CY2019 | us-gaap |
Tax Adjustments Settlements And Unusual Provisions
TaxAdjustmentsSettlementsAndUnusualProvisions
|
8000 | USD |
CY1998Q2 | us-gaap |
Preferred Stock Shares Issued
PreferredStockSharesIssued
|
250000 | |
CY1998Q2 | us-gaap |
Shares Issued Price Per Share
SharesIssuedPricePerShare
|
4.00 | |
CY1998Q2 | us-gaap |
Payments Of Stock Issuance Costs
PaymentsOfStockIssuanceCosts
|
112187 | USD |
CY1998Q2 | us-gaap |
Convertible Preferred Stock Shares Issued Upon Conversion
ConvertiblePreferredStockSharesIssuedUponConversion
|
4.05 | |
CY1998Q2 | us-gaap |
Preferred Stock Liquidation Preference
PreferredStockLiquidationPreference
|
4.00 | |
CY2006Q4 | us-gaap |
Stock Repurchase Program Authorized Amount1
StockRepurchaseProgramAuthorizedAmount1
|
20000000.0 | USD |
CY2008Q4 | pets |
Stock Repurchase Program Additional Authorized Amount
StockRepurchaseProgramAdditionalAuthorizedAmount
|
20000000.0 | USD |
CY2019Q1 | pets |
Stock Repurchase Program Additional Authorized Amount
StockRepurchaseProgramAdditionalAuthorizedAmount
|
30000000.0 | USD |
CY2020 | us-gaap |
Stock Repurchased And Retired During Period Shares
StockRepurchasedAndRetiredDuringPeriodShares
|
613000 | |
CY2020 | us-gaap |
Stock Repurchased And Retired During Period Value
StockRepurchasedAndRetiredDuringPeriodValue
|
11500000 | USD |
CY2019 | us-gaap |
Stock Repurchased And Retired During Period Shares
StockRepurchasedAndRetiredDuringPeriodShares
|
0 | |
CY2021Q1 | us-gaap |
Stock Repurchase Program Remaining Authorized Repurchase Amount1
StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1
|
28700000 | USD |
CY2018Q3 | us-gaap |
Dividends Payable Amount Per Share
DividendsPayableAmountPerShare
|
0.27 | |
CY2020Q2 | us-gaap |
Dividends Payable Amount Per Share
DividendsPayableAmountPerShare
|
0.28 | |
CY2012Q3 | pets |
Percentage Of Automatic Increase In Shares Available For Issuance
PercentageOfAutomaticIncreaseInSharesAvailableForIssuance
|
0.10 | pure |
CY2021 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
3300000 | USD |
CY2020 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
2800000 | USD |
CY2019 | us-gaap |
Share Based Compensation
ShareBasedCompensation
|
3100000 | USD |
CY2020Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Nonvested Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
|
183000 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Grants In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod
|
106000 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Vested In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod
|
126000 | |
CY2021 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Forfeited In Period
ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod
|
3000 | |
CY2021Q1 | us-gaap |
Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Nonvested Number
ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber
|
160000 | |
CY2021 | us-gaap |
Net Income Loss
NetIncomeLoss
|
30603000 | USD |
CY2020 | us-gaap |
Net Income Loss
NetIncomeLoss
|
25851000 | USD |
CY2019Q2 | us-gaap |
Net Income Loss
NetIncomeLoss
|
5343000 | USD |
CY2019Q3 | us-gaap |
Net Income Loss
NetIncomeLoss
|
6665000 | USD |
CY2019Q4 | us-gaap |
Net Income Loss
NetIncomeLoss
|
6840000 | USD |
CY2020Q1 | us-gaap |
Net Income Loss
NetIncomeLoss
|
7003000 | USD |
CY2019Q2 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.26 | |
CY2019Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.33 | |
CY2019Q4 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.34 | |
CY2020Q1 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.35 | |
CY2019 | us-gaap |
Net Income Loss
NetIncomeLoss
|
37740000 | USD |
CY2021 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
20060000 | |
CY2020 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
20041000 | |
CY2019 | us-gaap |
Weighted Average Number Of Shares Outstanding Basic
WeightedAverageNumberOfSharesOutstandingBasic
|
20461000 | |
CY2021 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
49000 | |
CY2020 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
4000 | |
CY2019 | us-gaap |
Incremental Common Shares Attributable To Share Based Payment Arrangements
IncrementalCommonSharesAttributableToShareBasedPaymentArrangements
|
20000 | |
CY2021 | us-gaap |
Incremental Common Shares Attributable To Conversion Of Preferred Stock
IncrementalCommonSharesAttributableToConversionOfPreferredStock
|
10000 | |
CY2020 | us-gaap |
Incremental Common Shares Attributable To Conversion Of Preferred Stock
IncrementalCommonSharesAttributableToConversionOfPreferredStock
|
10000 | |
CY2019 | us-gaap |
Incremental Common Shares Attributable To Conversion Of Preferred Stock
IncrementalCommonSharesAttributableToConversionOfPreferredStock
|
10000 | |
CY2021 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
20119000 | |
CY2020 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
20055000 | |
CY2019 | us-gaap |
Weighted Average Number Of Diluted Shares Outstanding
WeightedAverageNumberOfDilutedSharesOutstanding
|
20491000 | |
CY2021 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.53 | |
CY2020 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.29 | |
CY2019 | us-gaap |
Earnings Per Share Basic
EarningsPerShareBasic
|
1.84 | |
CY2021 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.52 | |
CY2020 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.29 | |
CY2019 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
1.84 | |
CY2021 | us-gaap |
Antidilutive Securities Excluded From Computation Of Earnings Per Share Amount
AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
|
20952 | |
CY2020 | us-gaap |
Antidilutive Securities Excluded From Computation Of Earnings Per Share Amount
AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
|
72120 | |
CY2019 | us-gaap |
Antidilutive Securities Excluded From Computation Of Earnings Per Share Amount
AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
|
126751 | |
CY2020 | pets |
Defined Contribution Plan With Individual Age
DefinedContributionPlanWithIndividualAge
|
P21Y | |
CY2021 | us-gaap |
Defined Contribution Plan Maximum Annual Contributions Per Employee Amount
DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount
|
245000 | USD |
CY2020 | us-gaap |
Defined Contribution Plan Maximum Annual Contributions Per Employee Amount
DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount
|
211000 | USD |
CY2019 | us-gaap |
Defined Contribution Plan Maximum Annual Contributions Per Employee Amount
DefinedContributionPlanMaximumAnnualContributionsPerEmployeeAmount
|
192000 | USD |
CY2021Q1 | us-gaap |
Dividends Payable Amount Per Share
DividendsPayableAmountPerShare
|
0.28 | |
CY2020Q2 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
96204000 | USD |
CY2020Q3 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
75436000 | USD |
CY2020Q4 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
65896000 | USD |
CY2021Q1 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
71679000 | USD |
CY2020Q2 | us-gaap |
Gross Profit
GrossProfit
|
26785000 | USD |
CY2020Q3 | us-gaap |
Gross Profit
GrossProfit
|
23018000 | USD |
CY2020Q4 | us-gaap |
Gross Profit
GrossProfit
|
19623000 | USD |
CY2021Q1 | us-gaap |
Gross Profit
GrossProfit
|
20522000 | USD |
CY2020Q2 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
9436000 | USD |
CY2020Q3 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
10471000 | USD |
CY2020Q4 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
9293000 | USD |
CY2021Q1 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
8387000 | USD |
CY2020Q2 | us-gaap |
Net Income Loss
NetIncomeLoss
|
7768000 | USD |
CY2020Q3 | us-gaap |
Net Income Loss
NetIncomeLoss
|
8412000 | USD |
CY2020Q4 | us-gaap |
Net Income Loss
NetIncomeLoss
|
7611000 | USD |
CY2021Q1 | us-gaap |
Net Income Loss
NetIncomeLoss
|
6812000 | USD |
CY2020Q2 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.39 | |
CY2020Q3 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.42 | |
CY2020Q4 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.38 | |
CY2021Q1 | us-gaap |
Earnings Per Share Diluted
EarningsPerShareDiluted
|
0.34 | |
CY2019Q2 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
79988000 | USD |
CY2019Q3 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
69936000 | USD |
CY2019Q4 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
59915000 | USD |
CY2020Q1 | us-gaap |
Revenue From Contract With Customer Including Assessed Tax
RevenueFromContractWithCustomerIncludingAssessedTax
|
74286000 | USD |
CY2019Q2 | us-gaap |
Gross Profit
GrossProfit
|
21861000 | USD |
CY2019Q3 | us-gaap |
Gross Profit
GrossProfit
|
20002000 | USD |
CY2019Q4 | us-gaap |
Gross Profit
GrossProfit
|
17697000 | USD |
CY2020Q1 | us-gaap |
Gross Profit
GrossProfit
|
21686000 | USD |
CY2019Q2 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
6161000 | USD |
CY2019Q3 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
8371000 | USD |
CY2019Q4 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
7932000 | USD |
CY2020Q1 | us-gaap |
Operating Income Loss
OperatingIncomeLoss
|
8513000 | USD |