Cover Page
Cover Page - shares | 6 Months Ended | |
Oct. 31, 2020 | Dec. 01, 2020 | |
Document Information [Line Items] | ||
Document Type | 10-Q | |
Document Quarterly Report | true | |
Document Period End Date | Oct. 31, 2020 | |
Document Transition Report | false | |
Entity File Number | 0-12456 | |
Entity Registrant Name | AMERICAN SOFTWARE, INC. | |
Entity Incorporation, State or Country Code | GA | |
Entity Tax Identification Number | 58-1098795 | |
Entity Address, Address Line One | 470 East Paces Ferry Road, N.E. | |
Entity Address, City or Town | Atlanta | |
Entity Address, State or Province | GA | |
Entity Address, Postal Zip Code | 30305 | |
City Area Code | 404 | |
Local Phone Number | 261-4381 | |
Title of 12(b) Security | Common Stock | |
Security Exchange Name | NASDAQ | |
Trading Symbol | AMSWA | |
Entity Current Reporting Status | Yes | |
Entity Interactive Data Current | Yes | |
Entity Filer Category | Accelerated Filer | |
Entity Small Business | false | |
Entity Emerging Growth Company | false | |
Entity Shell Company | false | |
Amendment Flag | false | |
Document Fiscal Year Focus | 2021 | |
Document Fiscal Period Focus | Q2 | |
Entity Central Index Key | 0000713425 | |
Current Fiscal Year End Date | --04-30 | |
Class A Common Shares | ||
Document Information [Line Items] | ||
Entity Common Stock, Shares Outstanding | 30,764,645 | |
Class B Common Shares | ||
Document Information [Line Items] | ||
Entity Common Stock, Shares Outstanding | 1,821,587 |
Condensed Consolidated Balance
Condensed Consolidated Balance Sheets - USD ($) $ in Thousands | Oct. 31, 2020 | Apr. 30, 2020 |
Current assets: | ||
Cash and cash equivalents | $ 81,786 | $ 79,814 |
Investments | 12,357 | 14,161 |
Trade accounts receivable, less allowance for doubtful accounts of $372 at October 31, 2020 and $264 at April 30, 2020: | ||
Billed | 18,499 | 22,582 |
Unbilled | 2,499 | 2,425 |
Prepaid expenses and other current assets | 6,673 | 6,684 |
Total current assets | 121,814 | 125,666 |
Investments—noncurrent | 472 | 701 |
Property and equipment, net of accumulated depreciation of $30,269 at October 31, 2020 and $29,959 at April 30, 2020 | 3,225 | 3,373 |
Capitalized software, net of accumulated amortization of $36,871 at October 31, 2020 and $34,611 at April 30, 2020 | 6,473 | 8,362 |
Goodwill | 25,888 | 25,888 |
Other intangibles, net of accumulated amortization of $12,867 at October 31, 2020 and $12,243 at April 30, 2020 | 509 | 1,132 |
Lease right of use assets | 1,813 | 2,053 |
Deferred sales commissions—noncurrent | 1,909 | 2,177 |
Other assets | 1,899 | 1,941 |
Total assets | 164,002 | 171,293 |
Current liabilities: | ||
Accounts payable | 1,640 | 1,643 |
Accrued compensation and related costs | 3,139 | 6,635 |
Dividends payable | 3,576 | 3,547 |
Operating lease obligations | 797 | 763 |
Other current liabilities | 790 | 643 |
Deferred revenue | 31,206 | 34,227 |
Total current liabilities | 41,148 | 47,458 |
Deferred income taxes | 2,553 | 2,897 |
Long-term operating lease obligations | 1,137 | 1,424 |
Other long-term liabilities | 111 | 92 |
Total liabilities | 44,949 | 51,871 |
Shareholders’ equity: | ||
Additional paid-in capital | 154,335 | 150,312 |
Retained deficit | (13,433) | (9,013) |
Class A treasury stock, 4,588,632 shares at October 31, 2020 and April 30, 2020, at cost | (25,559) | (25,559) |
Total shareholders’ equity | 119,053 | 119,422 |
Commitments and contingencies | ||
Total liabilities and shareholders’ equity | 164,002 | 171,293 |
Class A Common Shares | ||
Shareholders’ equity: | ||
Common stock value | 3,528 | 3,500 |
Class B Common Shares | ||
Shareholders’ equity: | ||
Common stock value | $ 182 | $ 182 |
Condensed Consolidated Balanc_2
Condensed Consolidated Balance Sheets (Parenthetical) - USD ($) $ in Thousands | Oct. 31, 2020 | Apr. 30, 2020 |
Allowance for doubtful accounts receivable | $ 372 | $ 264 |
Property and equipment, accumulated depreciation | 30,269 | 29,959 |
Capitalized software, accumulated amortization | 36,871 | 34,611 |
Other intangibles, accumulated amortization | $ 12,867 | $ 12,243 |
Class A Common Shares | ||
Common stock, par value (in usd per share) | $ 0.10 | $ 0.10 |
Common stock, shares authorized | 50,000,000 | 50,000,000 |
Common stock, shares issued | 35,277,846 | 35,000,649 |
Common stock, shares outstanding | 30,689,214 | 30,412,017 |
Class A treasury stock (in shares) | 4,588,632 | 4,588,632 |
Class B Common Shares | ||
Common stock, par value (in usd per share) | $ 0.10 | $ 0.10 |
Common stock, shares authorized | 10,000,000 | 10,000,000 |
Common stock, shares issued | 1,821,587 | 1,821,587 |
Common stock, shares outstanding | 1,821,587 | 1,821,587 |
Condensed Consolidated Statemen
Condensed Consolidated Statements of Operations - USD ($) shares in Thousands, $ in Thousands | 3 Months Ended | 6 Months Ended | |||||
Oct. 31, 2020 | Oct. 31, 2019 | Oct. 31, 2020 | Oct. 31, 2019 | ||||
Revenues: | |||||||
Revenues | $ 27,881 | $ 28,210 | $ 55,159 | $ 55,593 | |||
Cost of revenues: | |||||||
Cost of revenues | 13,064 | 13,024 | 26,101 | 25,785 | |||
Gross margin | 14,817 | 15,186 | 29,058 | 29,808 | |||
Research and development | 4,337 | 4,209 | 8,432 | 7,537 | |||
Sales and marketing | 5,429 | 5,148 | 10,173 | 10,727 | |||
General and administrative | 4,367 | 4,908 | 8,831 | 9,729 | |||
Amortization of acquisition-related intangibles | 53 | 78 | 106 | 175 | |||
Total operating expenses | 14,186 | 14,343 | 27,542 | 28,168 | |||
Operating income | 631 | 843 | 1,516 | 1,640 | |||
Other income: | |||||||
Interest income | 97 | 400 | 223 | 875 | |||
Other, net | (139) | 312 | 1,067 | 362 | |||
Earnings before income taxes | 589 | 1,555 | 2,806 | 2,877 | |||
Income tax (benefit)/expense | (103) | (204) | 80 | (34) | |||
Net earnings | $ 692 | [1] | $ 1,759 | $ 2,726 | $ 2,911 | ||
Earnings per common share | |||||||
Basic (in usd per share) | [2] | $ 0.02 | $ 0.06 | $ 0.08 | $ 0.09 | ||
Diluted (in usd per share) | [2] | 0.02 | 0.05 | 0.08 | 0.09 | ||
Cash dividends declared per common share (in usd per share) | $ 0.11 | [2] | $ 0.11 | [2] | $ 0.22 | $ 0.22 | |
Shares used in the calculation of earnings per common share | |||||||
Basic (in shares) | 32,489 | 31,609 | 32,414 | 31,440 | |||
Diluted (in shares) | 32,896 | 32,310 | 32,919 | 32,066 | |||
Class B Common Shares | |||||||
Earnings per common share | |||||||
Basic (in usd per share) | $ 0.02 | $ 0.06 | $ 0.08 | $ 0.09 | |||
Diluted (in usd per share) | $ 0.02 | $ 0.06 | $ 0.09 | $ 0.10 | |||
Shares used in the calculation of earnings per common share | |||||||
Basic (in shares) | 1,822 | 1,822 | 1,822 | 1,822 | |||
Diluted (in shares) | 1,822 | 1,822 | 1,822 | 1,822 | |||
Subscription Fees | |||||||
Revenues: | |||||||
Revenues | $ 6,966 | $ 5,492 | $ 13,329 | $ 9,950 | |||
Cost of revenues: | |||||||
Cost of revenues | 2,946 | 2,610 | 5,705 | 4,735 | |||
License | |||||||
Revenues: | |||||||
Revenues | 450 | 1,046 | 1,237 | 2,824 | |||
Cost of revenues: | |||||||
Cost of revenues | 553 | 1,007 | 1,228 | 2,387 | |||
Professional Services and Other | |||||||
Revenues: | |||||||
Revenues | 10,242 | 10,826 | 20,056 | 20,963 | |||
Cost of revenues: | |||||||
Cost of revenues | 7,624 | 7,543 | 15,454 | 14,948 | |||
Maintenance | |||||||
Revenues: | |||||||
Revenues | 10,223 | 10,846 | 20,537 | 21,856 | |||
Cost of revenues: | |||||||
Cost of revenues | $ 1,941 | $ 1,864 | $ 3,714 | $ 3,715 | |||
[1] | Amounts adjusted for rounding | ||||||
[2] | Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.02 and $0.06 for the three months ended October 31, 2020 and 2019 and $0.09 and $0.10 for the six months ended October 31, 2020 and 2019. See Note E to the Condensed Consolidated Financial Statements. |
Condensed Consolidated Statem_2
Condensed Consolidated Statements of Shareholders' Equity - USD ($) $ in Thousands | Total | Class A Common Shares | Class B Common Shares | Common stockClass A Common Shares | Common stockClass B Common Shares | Additional paid-in capital | Retained deficit | Treasury stock | |
Beginning balance (in shares) at Apr. 30, 2019 | 33,979,739 | 1,821,587 | |||||||
Beginning balance at Apr. 30, 2019 | $ 114,607 | $ 3,398 | $ 182 | $ 138,315 | $ (1,729) | $ (25,559) | |||
Increase (Decrease) in Stockholders' Equity [Roll Forward] | |||||||||
Proceeds from stock options exercised (in shares) | 650,943 | 650,943 | |||||||
Proceeds from stock options exercised | $ 6,358 | $ 65 | 6,293 | ||||||
Stock-based compensation | 946 | 946 | |||||||
Net earnings | 2,911 | 2,911 | |||||||
Dividends declared* | [1] | (6,956) | (6,956) | ||||||
Ending balance (in shares) at Oct. 31, 2019 | 34,630,682 | 1,821,587 | |||||||
Ending balance at Oct. 31, 2019 | 117,866 | $ 3,463 | $ 182 | 145,554 | (5,774) | (25,559) | |||
Beginning balance (in shares) at Jul. 31, 2019 | 34,131,239 | 1,821,587 | |||||||
Beginning balance at Jul. 31, 2019 | 114,203 | $ 3,413 | $ 182 | 140,195 | (4,028) | (25,559) | |||
Increase (Decrease) in Stockholders' Equity [Roll Forward] | |||||||||
Proceeds from stock options exercised (in shares) | 499,443 | ||||||||
Proceeds from stock options exercised | 4,906 | $ 50 | 4,856 | ||||||
Stock-based compensation | 503 | 503 | |||||||
Net earnings | 1,759 | 1,759 | |||||||
Dividends declared* | [1] | (3,505) | (3,505) | ||||||
Ending balance (in shares) at Oct. 31, 2019 | 34,630,682 | 1,821,587 | |||||||
Ending balance at Oct. 31, 2019 | 117,866 | $ 3,463 | $ 182 | 145,554 | (5,774) | (25,559) | |||
Beginning balance (in shares) at Apr. 30, 2020 | 35,000,649 | 1,821,587 | 35,000,649 | 1,821,587 | |||||
Beginning balance at Apr. 30, 2020 | $ 119,422 | $ 3,500 | $ 182 | 150,312 | (9,013) | (25,559) | |||
Increase (Decrease) in Stockholders' Equity [Roll Forward] | |||||||||
Proceeds from stock options exercised (in shares) | 277,197 | 277,197 | |||||||
Proceeds from stock options exercised | $ 2,853 | $ 28 | 2,825 | ||||||
Stock-based compensation | 1,198 | 1,198 | |||||||
Net earnings | 2,726 | 2,726 | |||||||
Dividends declared* | [1] | (7,146) | (7,146) | ||||||
Ending balance (in shares) at Oct. 31, 2020 | 35,277,846 | 1,821,587 | 35,277,846 | 1,821,587 | |||||
Ending balance at Oct. 31, 2020 | 119,053 | $ 3,528 | $ 182 | 154,335 | (13,433) | (25,559) | |||
Beginning balance (in shares) at Jul. 31, 2020 | 35,231,396 | 1,821,587 | |||||||
Beginning balance at Jul. 31, 2020 | 120,814 | $ 3,523 | $ 182 | 153,218 | (10,550) | (25,559) | |||
Increase (Decrease) in Stockholders' Equity [Roll Forward] | |||||||||
Proceeds from stock options exercised (in shares) | 46,450 | ||||||||
Proceeds from stock options exercised | 471 | $ 5 | 466 | ||||||
Stock-based compensation | 651 | 651 | |||||||
Net earnings | [1] | 692 | 692 | ||||||
Dividends declared* | [1] | (3,575) | (3,575) | ||||||
Ending balance (in shares) at Oct. 31, 2020 | 35,277,846 | 1,821,587 | 35,277,846 | 1,821,587 | |||||
Ending balance at Oct. 31, 2020 | $ 119,053 | $ 3,528 | $ 182 | $ 154,335 | $ (13,433) | $ (25,559) | |||
[1] | Amounts adjusted for rounding |
Condensed Consolidated Statem_3
Condensed Consolidated Statements of Cash Flows - USD ($) $ in Thousands | 3 Months Ended | 6 Months Ended | ||
Oct. 31, 2020 | Oct. 31, 2019 | Oct. 31, 2020 | Oct. 31, 2019 | |
Cash flows from operating activities: | ||||
Net earnings | $ 2,726 | $ 2,911 | ||
Adjustments to reconcile net earnings to net cash provided by operating activities: | ||||
Depreciation and amortization | $ 1,514 | $ 2,183 | 3,194 | 4,428 |
Stock-based compensation expense | 700 | 500 | 1,198 | 946 |
Net gain on investments | (803) | (356) | ||
Deferred income taxes | (344) | (131) | ||
Changes in operating assets and liabilities: | ||||
Purchases of trading securities | (285) | (21,412) | ||
Proceeds from maturities and sales of trading securities | 3,119 | 16,975 | ||
Accounts receivable, net | 4,009 | 2,180 | ||
Prepaid expenses and other assets | 322 | (1,160) | ||
Accounts payable and other liabilities | (3,344) | 389 | ||
Deferred revenue | (3,021) | (720) | ||
Net cash provided by operating activities | 6,771 | 4,050 | ||
Cash flows from investing activities: | ||||
Capitalized computer software development costs | (371) | (1,890) | ||
Purchases of property and equipment, net of disposals | (45) | (128) | (163) | (238) |
Net cash used in investing activities | (534) | (2,128) | ||
Cash flows from financing activities: | ||||
Proceeds from exercise of stock options | 2,853 | 6,358 | ||
Dividends paid | (7,118) | (6,884) | ||
Net cash used in financing activities | (4,265) | (526) | ||
Net change in cash and cash equivalents | 1,972 | 1,396 | ||
Cash and cash equivalents at beginning of period | 79,814 | 61,288 | ||
Cash and cash equivalents at end of period | 81,786 | 62,684 | 81,786 | 62,684 |
Cash paid during the period for: | ||||
Income taxes, net of refunds | 205 | 260 | ||
Supplemental disclosures of noncash operating, investing and financing activities: | ||||
Accrual of dividends payable | $ 3,576 | $ 3,505 | $ 3,576 | $ 3,505 |
Presentation and Summary of Sig
Presentation and Summary of Significant Accounting Policies | 6 Months Ended |
Oct. 31, 2020 | |
Accounting Policies [Abstract] | |
Presentation and Summary of Significant Accounting Policies | Presentation and Summary of Significant Accounting Policies Basis of Presentation The accompanying unaudited Condensed Consolidated Financial Statements have been prepared in accordance with U.S. generally accepted accounting principles ("GAAP") for interim financial information and the instructions to Form 10-Q and Rule 10-01 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required for complete consolidated financial statements. In the opinion of our management, these Condensed Consolidated Financial Statements contain all normal recurring adjustments considered necessary for a fair presentation of the Company’s financial position at October 31, 2020, results of operations for the three and six months ended October 31, 2020 and 2019, consolidated statements of shareholders’ equity for the three and six months ended October 31, 2020 and 2019 and cash flows for the six months ended October 31, 2020 and 2019. The Company’s results for the three and six months ended October 31, 2020 are not necessarily indicative of the results expected for the full year. You should read these statements in conjunction with our audited consolidated financial statements and management’s discussion and analysis and results of operations included in our Annual Report on Form 10-K (the “Annual Report”) for the fiscal year ended April 30, 2020. The terms “fiscal 2021” and “fiscal 2020” refer to our fiscal years ending April 30, 2021 and 2020, respectively. The preparation of these Condensed Consolidated Financial Statements requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities, and disclosures of contingent assets and liabilities, at the date of the Condensed Consolidated Financial Statements and the reported amounts of revenues and expenses during the reporting period. Note 1 in the Notes to the Consolidated Financial Statements for fiscal 2020 contained in the Annual Report describes the significant accounting policies that we have used in preparing our consolidated financial statements. On an ongoing basis, we evaluate our estimates, including, but not limited to, those related to revenue/reserves and allowances. We base our estimates on historical experience and on various other assumptions that we believe to be reasonable under the circumstances, the results of which form the basis for making judgments about the carrying values of assets and liabilities that are not readily apparent from other sources. Our actual results could differ materially from these estimates under different assumptions or conditions. Principles of Consolidation The accompanying unaudited Condensed Consolidated Financial Statements include the accounts of American Software, Inc. (“American Software”) and its wholly-owned subsidiaries (collectively, the “Company”). All significant intercompany balances and transactions have been eliminated in consolidation. Recent Accounting Pronouncements In January 2017, the Financial Accounting Standards Board ("FASB") issued ASU 2017–04, Intangibles—Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment , which simplifies the subsequent measurement of goodwill to eliminate Step 2 from the goodwill impairment test. In addition, it eliminates the requirements for any reporting unit with a zero or negative carrying amount to perform a qualitative assessment and, if it fails that qualitative test, to perform Step 2 of the goodwill impairment test. Therefore, the same impairment assessment applies to all reporting units. ASU 2017–04 is effective for the Company’s fiscal year beginning May 1, 2020. The new guidance is required to be applied on a prospective basis. The adoption of ASU 2017–04 did not have a material impact on the Company's consolidated financial statements. In August 2018, the FASB issued ASU 2018-15, Intangibles - Goodwill and Other - Internal-Use Software (Subtopic 350-40): Customer's Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement that is a Service Contract (A Consensus of the FASB Emerging Issues Task Force) . ASU 2018-15 provides additional guidance on the accounting for costs of implementation activities performed in a cloud computing arrangement (i.e., hosting arrangement) that is a service contract. The new guidance amends the definition of a hosting arrangement and requires a customer in a hosting arrangement that is a service contract to capitalize certain implementation costs following the internal use software capitalization criteria within Accounting Standards Codification ("ASC") Subtopic 350-40. We adopted ASU 2018-15 on May 1, 2020, applying the guidance prospectively, and the adoption of this standard did not have an impact on our consolidated financial statements. Historically we have not capitalized implementation costs associated with cloud computing arrangements that are service contracts following the guidance in Subtopic 350-40, but we will do so pursuant to the clarifications provided in the new guidance on a go forward basis. In June 2016, the FASB issued ASU No. 2016-13, Financial Instruments Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments , which requires the measurement and recognition of expected credit losses for financial assets held at amortized cost, including trade receivables. ASU No. 2016-13 replaces the existing incurred loss impairment model with an expected loss model that requires the use of forward-looking information to calculate credit loss estimates. This guidance is effective for annual reporting periods beginning after December 15, 2019, with early adoption permitted. On May 1, 2020, we adopted ASU 2016-13 using the modified retrospective method applied for all financial assets measured at amortized cost. In estimating the allowance for credit losses, we considered the age of the accounts receivable, our historical write-offs, and the historical creditworthiness of the customer, among other factors. Should any of these factors change, the estimates made by us will also change accordingly, which could affect the level of our future allowances. We also analyzed future expected credit losses given ever present changes to future risks in projected economic conditions and future risks of customer collection. The net impact of the adoption of ASU 2016-13 was immaterial on our consolidated financial statements. In December 2019, the FASB issued ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes . The new guidance eliminates certain exceptions related to the approach for intra-period tax allocation, the methodology for calculating taxes during the quarters and the recognition of deferred tax liabilities for outside basis differences. This guidance also simplifies aspects of the accounting for franchise taxes and changes in tax laws or rates, as well as clarifies the accounting for transactions that result in a step-up in the tax basis of goodwill. ASU 2019-12 will be effective for the Company beginning May 1, 2021 and would require us to recognize a cumulative effect adjustment to the opening balance of reinvested earnings, if applicable. We do not expect our adoption of this guidance to have a material impact on our consolidated financial statements. |
Revenue Recognition
Revenue Recognition | 6 Months Ended |
Oct. 31, 2020 | |
Revenue from Contract with Customer [Abstract] | |
Revenue Recognition | Revenue Recognition We recognize revenue when we transfer control of the promised goods or services to our customers, in an amount that reflects the consideration we expect to receive in exchange for those goods or services. We derive our revenue from software licenses; maintenance services; consulting, implementation and training services; and Software-as-a-Service (“SaaS”), which includes a subscription to our software as well as maintenance, hosting and managed services. The Company determines revenue recognition through the following steps: Step 1 – Identification of the Contract with the Customer Step 2 – Identification of Promised Goods and Services and Evaluation of Whether the Promised Goods and Services are Distinct Performance Obligations Step 3 – Determination of the Transaction Price Step 4 – Allocation of the Transaction Price to Distinct Performance Obligations Step 5 – Attribution of Revenue for Each Distinct Performance Obligation Nature of Products and Services Subscription Fees . Subscription fees include SaaS revenues for the right to use the software for a limited period of time in an environment hosted by the Company or by a third party. The customer accesses and uses the software on an as-needed basis over the Internet or via a dedicated line; however, the customer has no right to take delivery of the software without incurring a significant penalty. The underlying arrangements typically include a single fee for the service that is billed monthly, quarterly or annually. The Company’s SaaS solutions represent a series of distinct services that are substantially the same and have the same pattern of transfer to the customer. Revenue from a SaaS solution is generally recognized ratably over the term of the arrangement. Licenses . Our perpetual and term software licenses provide the customer with a right to use the software as it exists at the time of purchase. We recognize revenue for distinct software licenses once the license period has begun and we have made the software available to the customer. Our software licenses are sold with maintenance under which we provide customers with telephone consulting, product updates on a when and if available basis, and releases of new versions of products previously purchased by the customer, as well as error reporting and correction services. Professional Services and Other. Our services revenue consists of fees generated from consulting, implementation and training services, including reimbursements of out-pocket expenses in connection with our services. Services are typically optional to our customers, and are distinct from our software. Fees for our services are separately priced and are generally billed on an hourly basis, and revenue is recognized over time as the services are performed. We believe the output method of hours worked provides the best depiction of the transfer of our services since the customer is receiving the benefit from our services as the work is performed. The total amount of expense reimbursement included in professional services and other revenue was approximately $12,000 and $16,000 for the three and six months ended October 31, 2020, respectively, and approximately $0.5 million and $0.9 million for the three and six months ended October 31, 2019, respectively. Maintenance. Revenue is derived from maintenance under which we provide customers with telephone consulting, product updates on a when and if available basis, and releases of new versions of products previously purchased by the customer, as well as error reporting and correction services. Maintenance for licenses is renewable, generally on an annual basis, at the option of the customer. Maintenance terms typically range from one Indirect Channel Revenue. We record revenues from sales made through the indirect sales channels on a gross basis, because we control the goods or services and act as the principal in the transaction. In reaching this determination, we evaluated sales through our indirect channel on a case-by-case basis and considered a number of factors including indicators of control such as the party having the primary responsibility to provide specified goods or services and the party having discretion in establishing prices. Sales Taxes. We account for sales taxes collected from customers on a net basis. Significant Judgments. Many of our contracts include multiple performance obligations. Our products and services generally do not require a significant amount of integration or interdependency; therefore, our products and services are generally not combined. We allocate the transaction price for each contract to each performance obligation based on the relative standalone selling price ("SSP") for each performance obligation within each contract. We use judgment in determining the SSP for products and services. For substantially all performance obligations except on-premise licenses, we are able to establish SSP based on the observable prices of products or services sold separately to similar customers in comparable circumstances. We typically establish an SSP range for our products and services which is reassessed on a periodic basis or when facts and circumstances change. Our on-premise licenses historically have not been sold on a standalone basis, as the vast majority of all customers elect to purchase on-premise license maintenance and support contracts at the time of an on-premise license purchase. We are unable to establish the SSP for our on-premise licenses based on observable prices, as the same products are sold for a broad range of prices (that is, the selling price is highly variable) and a representative SSP is not discernible from past transactions or other observable evidence. As a result, the SSP for an on-premise license included in a contract with multiple performance obligations is determined by applying a residual approach, whereby all other performance obligations within a contract are first allocated a portion of the transaction price based upon their respective SSPs, with any residual amount of transaction price allocated to on-premise license revenues. Maintenance and support contracts are generally priced as a percentage of the net fees paid by the customer to access the on-premise license. Contract Balances. Timing of invoicing to customers may differ from timing of revenue recognition and these timing differences result in unbilled accounts receivables or contract liabilities (deferred revenue) on the Company’s consolidated balance sheets. Fees for our software licenses are generally due within 30 days of contract execution. We have an established history of collecting under the terms of our software license contracts without providing refunds or concessions to our customers. SaaS solutions and maintenance are typically billed in advance on a monthly, quarterly, or annual basis. Services are typically billed as performed. In instances where the timing of revenue recognition differs from the timing of invoicing, we have determined that our contracts generally do not include significant financing component. The primary purpose of our invoicing terms is to provide customers with predictable ways to purchase our software and services, not to provide or receive financing. Additionally, we are applying the practical expedient to exclude any financing component from consideration for any contracts with payment terms of one year or less since we rarely offer terms extending beyond one year. The consideration in our customer contracts is fixed. We have an unconditional right to consideration for all goods and services transferred to our customers. That unconditional right to consideration is reflected in billed and unbilled accounts receivable in the accompanying consolidated balance sheets in accordance with ASC Topic 606. Deferred revenue consists of amounts collected prior to having completed the performance of maintenance, SaaS, hosting, and managed services. We typically invoice customers for cloud subscription and support fees in advance on a monthly, quarterly or annual basis, with payment due at the start of the cloud subscription or support term. During the three months ended October 31, 2020, we recognized $14.6 million of revenue that was included in the deferred revenue balance as of July 31, 2020. During the six months ended October 31, 2020, we recognized $25 million of revenue that was included in the deferred revenue balance as of April 30, 2020. October 31, April 30, (in thousands) Deferred revenue, current 31,206 34,227 Deferred revenue, long-term — — Total deferred revenue $ 31,206 $ 34,227 Remaining Performance Obligations. A performance obligation is a promise in a contract to transfer a distinct good or service to the customer and is the unit of account under Topic 606. The transaction price is allocated to each distinct performance obligation and recognized as revenue when, or as, the performance obligation is satisfied by transferring the promised good or service to the customer. The Company identifies and tracks the performance obligations at contract inception so that the Company can monitor and account for the performance obligations over the life of the contract. Remaining performance obligations represent the transaction price of orders for which products have not been delivered or services have not been performed. As of October 31, 2020, the aggregate amount of the transaction price allocated to remaining performance obligations was approximately $78.0 million. The Company expects to recognize revenue on approximately two-thirds of the remaining performance obligations over the next 12 months, with the remainder recognized thereafter. Disaggregated Revenue. The Company disaggregates revenue from contracts with customers by geography, as it believes it best depicts how the nature, amount, timing and uncertainty of revenue and cash flows are affected by economic factors. The Company’s revenue by geography is as follows: Three Months Ended Six Months Ended 2020 2019 2020 2019 (in thousands) (in thousands) Revenues: Domestic $ 23,659 $ 22,763 $ 46,799 $ 44,174 International 4,222 5,447 8,360 11,419 $ 27,881 $ 28,210 $ 55,159 $ 55,593 Contract Costs. The Company capitalizes the incremental costs of obtaining a contract with a customer if the Company expects to recover those costs. The incremental costs of obtaining a contract are those that the Company incurs to obtain a contract with a customer that it would not have incurred if the contract had not been obtained (for example, a sales commission). The Company capitalizes the costs incurred to fulfill a contract only if those costs meet all of the following criteria: a. The costs relate directly to a contract or to an anticipated contract that the Company can specifically identify. b. The costs generate or enhance resources of the Company that will be used in satisfying (or in continuing to satisfy) performance obligations in the future. c. The costs are expected to be recovered. Certain sales commissions incurred by the Company were determined to be incremental costs to obtain the related contracts, which are deferred and amortized ratably over the economic benefit period. These deferred commission costs are classified as current or non-current based on the timing of when the Company expects to recognize the expense. The current and non-current portions of deferred commissions are included in prepaid expenses and other current assets and deferred sales commissions—noncurrent, respectively, in the Company’s Condensed Consolidated Balance Sheets. Total deferred commissions at October 31, 2020 and April 30, 2020 were $3.1 million and $3.5 million, respectively. Amortization of sales |
Leases
Leases | 6 Months Ended |
Oct. 31, 2020 | |
Leases [Abstract] | |
Leases | Leases The Company’s operating leases are primarily related to facility leases for administration and sales. The operating leases have terms ranging from three Balance sheet information related to operating leases is as follows (in thousands): October 31, 2020 Assets Right of use assets $ 1,813 Liabilities Current lease liabilities 797 Long-term lease liabilities 1,137 Total liabilities $ 1,934 Lease cost information related to operating leases is as follows (in thousands): Three Months Ended October 31, 2020 Six Months Ended October 31, 2020 Lease cost Operating lease cost $ 197 $ 391 Short-term lease cost 161 319 Variable lease cost 76 145 Total lease cost $ 434 $ 855 Lease costs are primarily included in "Sales and marketing" and "General and administrative" expenses in the Company’s Condensed Consolidated Statements of Operations. The impact of the Company's leases on Condensed Consolidated Statement of Cash Flows is presented in the operating activities section, which mainly consisted of cash paid for operating lease liabilities of approximately $0.9 million during the six months ended October 31, 2020. On October 6, 2020, the Company extended the lease between Haymac LLC, and Logility, Inc., for an additional three years for the office building located in Massachusetts now ending on December 31, 2023. Weighted average information associated with the measurement of the Company’s remaining operating lease obligations is as follows: October 31, 2020 Weighted average remaining lease term 2.8 years Weighted average discount rate 3.3 % The following table summarizes the maturity of the Company’s operating lease liabilities as of October 31, 2020 (in thousands): FY2021 $ 407 FY2022 711 FY2023 486 FY2024 361 FY2025 20 Thereafter — Total operating lease payments $ 1,985 Less imputed interest (51) Total operating lease liabilities $ 1,934 The Company leases to other tenants a portion of its headquarters building that it owns in Atlanta, Georgia. The leases expire at various dates through October 2025. Lease income is included in "Other, net" in the Company’s Condensed Consolidated Statements of Operations and totaled approximately $79,000 and $150,000 for the three and six months ended October 31, 2020, respectively. Lease payments to be received as of October 31, 2020 are as follows (in thousands): FY2021 $ 93 FY2022 149 FY2023 96 FY2024 98 FY2025 100 Thereafter 50 Total $ 586 |
Leases | Leases The Company’s operating leases are primarily related to facility leases for administration and sales. The operating leases have terms ranging from three Balance sheet information related to operating leases is as follows (in thousands): October 31, 2020 Assets Right of use assets $ 1,813 Liabilities Current lease liabilities 797 Long-term lease liabilities 1,137 Total liabilities $ 1,934 Lease cost information related to operating leases is as follows (in thousands): Three Months Ended October 31, 2020 Six Months Ended October 31, 2020 Lease cost Operating lease cost $ 197 $ 391 Short-term lease cost 161 319 Variable lease cost 76 145 Total lease cost $ 434 $ 855 Lease costs are primarily included in "Sales and marketing" and "General and administrative" expenses in the Company’s Condensed Consolidated Statements of Operations. The impact of the Company's leases on Condensed Consolidated Statement of Cash Flows is presented in the operating activities section, which mainly consisted of cash paid for operating lease liabilities of approximately $0.9 million during the six months ended October 31, 2020. On October 6, 2020, the Company extended the lease between Haymac LLC, and Logility, Inc., for an additional three years for the office building located in Massachusetts now ending on December 31, 2023. Weighted average information associated with the measurement of the Company’s remaining operating lease obligations is as follows: October 31, 2020 Weighted average remaining lease term 2.8 years Weighted average discount rate 3.3 % The following table summarizes the maturity of the Company’s operating lease liabilities as of October 31, 2020 (in thousands): FY2021 $ 407 FY2022 711 FY2023 486 FY2024 361 FY2025 20 Thereafter — Total operating lease payments $ 1,985 Less imputed interest (51) Total operating lease liabilities $ 1,934 The Company leases to other tenants a portion of its headquarters building that it owns in Atlanta, Georgia. The leases expire at various dates through October 2025. Lease income is included in "Other, net" in the Company’s Condensed Consolidated Statements of Operations and totaled approximately $79,000 and $150,000 for the three and six months ended October 31, 2020, respectively. Lease payments to be received as of October 31, 2020 are as follows (in thousands): FY2021 $ 93 FY2022 149 FY2023 96 FY2024 98 FY2025 100 Thereafter 50 Total $ 586 |
Declaration of Dividend Payable
Declaration of Dividend Payable | 6 Months Ended |
Oct. 31, 2020 | |
Dividends [Abstract] | |
Declaration of Dividend Payable | Declaration of Dividend PayableOn August 19, 2020, our Board of Directors declared a quarterly cash dividend of $0.11 per share of our Class A and Class B common stock. The cash dividend is payable on December 4, 2020 to Class A and Class B shareholders of record at the close of business on November 20, 2020. |
Earnings Per Common Share
Earnings Per Common Share | 6 Months Ended |
Oct. 31, 2020 | |
Earnings Per Share [Abstract] | |
Earnings Per Common Share | Earnings Per Common Share The Company has two classes of common stock. Class B common shares are convertible into Class A common shares at any time, on a one-for-one basis. Under the Company’s Articles of Incorporation, if dividends are declared, holders of Class A common shares shall receive a $0.05 dividend per share prior to the Class B common shares receiving any dividend and holders of Class A common shares shall receive a dividend at least equal to Class B common shares dividends on a per share basis. As a result, the Company has computed the earnings per share in compliance with the Earnings Per Share Topic of the FASB ASC, which requires companies that have multiple classes of equity securities to use the “two-class” method in computing earnings per share. For the Company’s basic earnings per share calculation, the Company uses the “two-class” method. Basic earnings per share are calculated by dividing net earnings attributable to each class of common stock by the weighted average number of shares outstanding. All undistributed earnings are allocated evenly between Class A and B common shares in the earnings per share calculation to the extent that earnings equal or exceed $0.05 per share. This allocation is based on management’s judgment after considering the dividend rights of the two-classes of common stock, the control of the Class B shareholders and the convertibility rights of the Class B shares to Class A shares. If Class B shares convert to Class A shares during the period, the distributed net earnings for Class B shares is calculated using the weighted average common shares outstanding during the period. Diluted earnings per share is calculated similarly to basic earnings per share, except that the calculation includes the dilutive effect of the assumed exercise of options issuable under the Company’s stock incentive plans. For the Company’s diluted earnings per share calculation for Class A shares, the Company uses the “if-converted” method. This calculation assumes that all Class B common shares are converted into Class A common shares and, as a result, assumes there are no holders of Class B common shares to participate in undistributed earnings. For the Company’s diluted earnings per share calculation for Class B shares, the Company uses the “two-class” method. This calculation does not assume that all Class B common shares are converted into Class A common shares. In addition, this method assumes the dilutive effect of Class A stock options were converted to Class A shares and the undistributed earnings are allocated evenly to both Class A and B shares including Class A shares issued pursuant to those converted stock options. This allocation is based on management’s judgment after considering the dividend rights of the two-classes of common stock, the control of the Class B shareholders and the convertibility rights of the Class B shares into Class A shares. The following tables set forth the computation of basic earnings per common share and diluted earnings per common share (in thousands except for per share amounts): Basic earnings per common share: Three Months Ended Six Months Ended Class A Class B Class A Class B Distributed earnings $ 0.11 $ 0.11 $ 0.22 $ 0.22 Undistributed losses (0.09) (0.09) (0.14) (0.14) Total $ 0.02 $ 0.02 $ 0.08 $ 0.08 Distributed earnings $ 3,375 $ 201 $ 6,745 $ 402 Undistributed losses (2,722) (162) (4,172) (249) Total $ 653 $ 39 $ 2,573 $ 153 Basic weighted average common shares outstanding 30,667 1,822 30,592 1,822 Three Months Ended Six Months Ended Class A Class B Class A Class B Distributed earnings $ 0.11 $ 0.11 $ 0.22 $ 0.22 Undistributed losses $ (0.05) $ (0.05) $ (0.13) $ (0.13) Total $ 0.06 $ 0.06 $ 0.09 $ 0.09 Distributed earnings $ 3,303 $ 202 $ 6,552 $ 403 Undistributed losses $ (1,645) $ (101) $ (3,810) $ (234) Total $ 1,658 $ 101 $ 2,742 $ 169 Basic weighted average common shares outstanding $ 29,787 $ 1,822 $ 29,618 $ 1,822 Diluted EPS for Class A Common Shares Using the If-Converted Method Three Months Ended October 31, 2020 Undistributed Class A EPS* Per Basic $ 653 30,667 $ 0.02 Common Stock Equivalents — 407 — 653 31,074 0.02 Class B Common Share Conversion 39 1,822 — Diluted EPS for Class A Common Shares $ 692 32,896 $ 0.02 Six Months Ended October 31, 2020 Undistributed Class A EPS* Per Basic $ 2,573 30,592 $ 0.08 Common Stock Equivalents — 505 — 2,573 31,097 0.08 Class B Common Share Conversion 153 1,822 — Diluted EPS for Class A Common Shares $ 2,726 32,919 $ 0.08 Three Months Ended October 31, 2019 Undistributed Class A EPS* Per Basic $ 1,658 29,787 $ 0.06 Common Stock Equivalents — 701 — 1,658 30,488 0.05 Class B Common Share Conversion 101 1,822 — Diluted EPS for Class A Common Shares $ 1,759 32,310 $ 0.05 Six Months Ended October 31, 2019 Undistributed Class A EPS* Per Basic $ 2,742 29,618 $ 0.09 Common Stock Equivalents — 626 — 2,742 30,244 0.09 Class B Common Share Conversion 169 1,822 — Diluted EPS for Class A Common Shares $ 2,911 32,066 $ 0.09 Diluted EPS for Class B Common Shares Using the Two-Class Method Three Months Ended October 31, 2020 Undistributed Class B EPS* Per Basic $ 39 1,822 $ 0.02 Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares 2 — — Diluted EPS for Class B Common Shares $ 41 1,822 $ 0.02 Six Months Ended October 31, 2020 Undistributed Class B EPS* Per Basic $ 153 $ 1,822 $ 0.08 Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares 4 — — Diluted EPS for Class B Common Shares $ 157 $ 1,822 $ 0.09 Three Months Ended October 31, 2019 Undistributed Class B EPS* Per Basic $ 101 $ 1,822 $ 0.06 Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares 3 — — Diluted EPS for Class B Common Shares $ 104 $ 1,822 $ 0.06 Six Months Ended October 31, 2019 Undistributed Class B EPS* Per Basic $ 169 $ 1,822 $ 0.09 Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares 6 — — Diluted EPS for Class B Common Shares $ 175 $ 1,822 $ 0.10 _______________ *Amounts adjusted for rounding For the three months and six months ended October 31, 2020, we excluded options to purchase 1,842,587 and 1,426,760 Class A Common Shares, respectively, and for the three months and six months ended October 31, 2019, we excluded options |
Stock-Based Compensation
Stock-Based Compensation | 6 Months Ended |
Oct. 31, 2020 | |
Share-based Payment Arrangement [Abstract] | |
Stock-Based Compensation | Stock-Based Compensation During the six months ended October 31, 2020 and 2019, we granted options for 1,120,000 and 1,063,000 shares of Class A common stock, respectively. The fair value of each option award is estimated on the date of grant using the Black-Scholes option pricing model. The forfeiture rates are estimated using historical data. We recorded stock option compensation cost of approximately $0.7 million and $0.5 million and income tax benefits of approximately $38,000 and $412,000 from option exercises during the three months ended October 31, 2020 and 2019, respectively. We recorded stock option compensation cost of approximately $1.2 million and $0.9 million and income tax benefits of approximately $0.3 million and $0.5 million from option exercises during the six months ended October 31, 2020 and 2019, respectively. We record stock-based compensation expense on a straight-line basis over the vesting period directly to additional paid-in capital. During the six months ended October 31, 2020 and 2019, we issued 277,197 and 650,943 shares of Class A common stock, respectively, resulting from the exercise of stock options. The total intrinsic value of options exercised during the six months ended October 31, 2020 and 2019 based on market value at the exercise dates was approximately $1.6 million and $3.2 million, respectively. As of October 31, 2020, unrecognized compensation cost related to unvested stock option awards approximated $7.7 million, which we expect to recognize over a weighted average period of 1.99 years. |
Fair Value of Financial Instrum
Fair Value of Financial Instruments | 6 Months Ended |
Oct. 31, 2020 | |
Fair Value Disclosures [Abstract] | |
Fair Value of Financial Instruments | Fair Value of Financial Instruments We measure our investments based on a fair value hierarchy disclosure framework that prioritizes and ranks the level of market price observability used in measuring assets and liabilities at fair value. A number of factors affect market price observability, including the type of asset or liability and its characteristics. This hierarchy prioritizes the inputs into three broad levels as follows: • Level 1—Quoted prices for identical instruments in active markets. • Level 2—Quoted prices for similar instruments in active markets; quoted prices for identical or similar instruments in markets that are not active; and model-derived valuations in which all significant inputs and significant value drivers are observable in active markets. • Level 3—Valuations derived from valuation techniques in which one or more significant inputs or significant value drivers are unobservable. The following is a general description of the valuation methodologies we use for financial assets and liabilities measured at fair value, including the general classification of such assets and liabilities pursuant to the valuation hierarchy. Cash Equivalents —Cash equivalents include investments in government obligation based money-market funds, other money market instruments and interest-bearing deposits with initial terms of three months or less. The fair value of cash equivalents approximates its carrying value due to the short-term nature of these instruments. Marketable Securities —Marketable securities utilizing Level 1 inputs include active exchange-traded equity securities and equity index funds, and most U.S. government debt securities, as these securities all have quoted prices in active markets. Marketable securities utilizing Level 2 inputs include municipal bonds. We value these securities using market-corroborated pricing or other models that use observable inputs such as yield curves. The following tables present our assets and liabilities that we measured at fair value on a recurring basis as of October 31, 2020 and April 30, 2020, and indicate the fair value hierarchy of the valuation techniques we used to determine such fair value (in thousands): October 31, 2020 Quoted Prices Significant Significant Balance Cash equivalents $ 74,902 $ — $ — $ 74,902 Marketable securities 11,725 1,104 — 12,829 Total $ 86,627 $ 1,104 $ — $ 87,731 April 30, 2020 Quoted Prices Significant Significant Balance Cash equivalents 75,256 — — 75,256 Marketable securities 11,758 3,104 — 14,862 Total 87,014 3,104 — 90,118 |
Stock Repurchases
Stock Repurchases | 6 Months Ended |
Oct. 31, 2020 | |
Equity [Abstract] | |
Stock Repurchases | Stock RepurchasesOn August 19, 2002, our Board of Directors authorized the repurchase of up to an additional 2.0 million shares of our Class A common stock. We have made and will make these repurchases through open market purchases at prevailing market prices. The timing of any repurchase will depend upon market conditions, the market price of our Class A common stock and management’s assessment of our liquidity and cash flow needs. Under this repurchase plan, we have repurchased 1,053,679 shares of Class A common stock at a cost of approximately $6.2 million, which had no impact on fiscal 2021. As of October 31, 2020, under all repurchase plans previously authorized, including this most recent plan, we have repurchased a total of 4,588,632 shares of common stock at a cost of approximately $25.6 million. |
Comprehensive Income
Comprehensive Income | 6 Months Ended |
Oct. 31, 2020 | |
Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract] | |
Comprehensive Income | Comprehensive IncomeWe have not included condensed consolidated statements of comprehensive income in the accompanying unaudited Condensed Consolidated Financial Statements since comprehensive income and net earnings presented in the accompanying Condensed Consolidated Statements of Operations would be substantially the same. |
Industry Segments
Industry Segments | 6 Months Ended |
Oct. 31, 2020 | |
Segment Reporting [Abstract] | |
Industry Segments | Industry Segments FASB ASC 280, Segment Reporting , establishes standards for reporting information about operating segments. Operating segments are defined as components of a public entity about which separate financial information is available that is evaluated regularly by the chief operating decision makers (“CODMs”), or decision making group, in deciding how to allocate resources and in assessing performance. Our CODMs are our Chief Executive Officer and President and our Chief Financial Officer. While our CODMs are apprised of a variety of financial metrics and information, we manage our business primarily on a segment basis, with the CODMs evaluating performance based upon segment operating profit or loss, with certain corporate and other common expenses included in the Other segment. Our CODMs review the operating results of our three segments, assess performance and allocate resources in a manner that is consistent with the changing market dynamics that we have experienced. As a result, in the third quarter of fiscal 2018, we updated our operating segments to reflect the fact that we provide our software solutions through three major operating segments, which are further broken down into a total of six major product and service groups. The three operating segments are (1) Supply Chain Management (“SCM”), (2) Information Technology (“IT”) Consulting and (3) Other. Our primary operating units or brands under our SCM segment include Logility, Inc., New Generation Computing, Inc. ("NGC"), and Demand Management, Inc. ("DMI"). Logility and NGC are each a wholly-owned subsidiary of the Company, and DMI is a wholly-owned subsidiary of Logility, Inc. Each operating unit focuses on a segment of the marketplace where their expertise lies. All of our revenues are derived from external customers. We do not have any intersegment revenue. Our income taxes and dividends are paid at a consolidated level. Consequently, it is not practical to show these items by operating segment. In the following table, we have broken down the intersegment transactions applicable to the three months ended October 31, 2020 and 2019 (in thousands): Three Months Ended October 31, Six Months Ended October 31, 2020 2019 2020 2019 Revenues: Supply Chain Management $ 22,297 $ 23,487 $ 44,033 $ 45,834 IT Consulting 5,033 4,158 10,059 8,536 Other 551 565 1,067 1,223 $ 27,881 $ 28,210 $ 55,159 $ 55,593 Operating income (loss): Supply Chain Management $ 3,983 $ 4,360 $ 8,087 $ 8,211 IT Consulting 103 (12) 209 166 Other (3,455) (3,505) (6,780) (6,737) $ 631 $ 843 $ 1,516 $ 1,640 Capital expenditures: Supply Chain Management $ 45 $ 44 $ 84 $ 75 IT Consulting — — — — Other — 84 79 163 $ 45 $ 128 $ 163 $ 238 Capitalized software: Supply Chain Management $ 126 $ 605 $ 371 $ 1,890 IT Consulting — — — — Other — — — — $ 126 $ 605 $ 371 $ 1,890 Depreciation and amortization: Supply Chain Management $ 1,415 $ 2,089 $ 3,001 $ 4,241 IT Consulting — 1 1 3 Other 99 93 192 184 $ 1,514 $ 2,183 $ 3,194 $ 4,428 Earnings (loss) before income taxes: Supply Chain Management $ 3,845 $ 4,480 $ 8,220 $ 8,516 IT Consulting 103 (12) 207 166 Other (3,359) (2,913) (5,621) (5,805) $ 589 $ 1,555 $ 2,806 $ 2,877 |
Major Customers
Major Customers | 6 Months Ended |
Oct. 31, 2020 | |
Segment Reporting [Abstract] | |
Major Customers | Major CustomersNo single customer accounted for more than 10% of total revenues for the three and six months ended October 31, 2020 and 2019. |
Contingencies
Contingencies | 6 Months Ended |
Oct. 31, 2020 | |
Commitments and Contingencies Disclosure [Abstract] | |
Contingencies | ContingenciesWe generally indemnify our customers against damages and costs resulting from third-party claims of patent, copyright or trademark infringement associated with use of our products. Historically, we have not been required to make any payments under such indemnifications. However, we continue to monitor the conditions that are subject to indemnification to identify whether it is probable that a loss has occurred, and would recognize any such losses when those losses are estimable. In addition, we warrant to our customers that our software products operate substantially in accordance with their documentation. Historically, we have incurred no costs related to software product warranties and we do not expect to incur such costs in the future, and as such we have made no accruals for software product warranty costs. Additionally, we are involved in various claims arising in the ordinary course of business. In the opinion of management, the ultimate disposition of these matters will not have a material adverse effect on our financial position or results of operations. |
Subsequent Event
Subsequent Event | 6 Months Ended |
Oct. 31, 2020 | |
Subsequent Events [Abstract] | |
Subsequent Event | Subsequent EventOn November 18, 2020, our Board of Directors declared a quarterly cash dividend of $0.11 per share of our Class A and Class B common stock. The cash dividend is payable on February 19, 2021 to Class A and Class B shareholders of record at the close of business on February 5, 2021. |
Presentation and Summary of S_2
Presentation and Summary of Significant Accounting Policies (Policies) | 6 Months Ended |
Oct. 31, 2020 | |
Accounting Policies [Abstract] | |
Basis of Presentation | Basis of Presentation The accompanying unaudited Condensed Consolidated Financial Statements have been prepared in accordance with U.S. generally accepted accounting principles ("GAAP") for interim financial information and the instructions to Form 10-Q and Rule 10-01 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required for complete consolidated financial statements. In the opinion of our management, these Condensed Consolidated Financial Statements contain all normal recurring adjustments considered necessary for a fair presentation of the Company’s financial position at October 31, 2020, results of operations for the three and six months ended October 31, 2020 and 2019, consolidated statements of shareholders’ equity for the three and six months ended October 31, 2020 and 2019 and cash flows for the six months ended October 31, 2020 and 2019. The Company’s results for the three and six months ended October 31, 2020 are not necessarily indicative of the results expected for the full year. You should read these statements in conjunction with our audited consolidated financial statements and management’s discussion and analysis and results of operations included in our Annual Report on Form 10-K (the “Annual Report”) for the fiscal year ended April 30, 2020. The terms “fiscal 2021” and “fiscal 2020” refer to our fiscal years ending April 30, 2021 and 2020, respectively. |
Principles of Consolidation | Principles of Consolidation The accompanying unaudited Condensed Consolidated Financial Statements include the accounts of American Software, Inc. (“American Software”) and its wholly-owned subsidiaries (collectively, the “Company”). All significant intercompany balances and transactions have been eliminated in consolidation. |
Recent Accounting Pronouncements | Recent Accounting Pronouncements In January 2017, the Financial Accounting Standards Board ("FASB") issued ASU 2017–04, Intangibles—Goodwill and Other (Topic 350): Simplifying the Test for Goodwill Impairment , which simplifies the subsequent measurement of goodwill to eliminate Step 2 from the goodwill impairment test. In addition, it eliminates the requirements for any reporting unit with a zero or negative carrying amount to perform a qualitative assessment and, if it fails that qualitative test, to perform Step 2 of the goodwill impairment test. Therefore, the same impairment assessment applies to all reporting units. ASU 2017–04 is effective for the Company’s fiscal year beginning May 1, 2020. The new guidance is required to be applied on a prospective basis. The adoption of ASU 2017–04 did not have a material impact on the Company's consolidated financial statements. In August 2018, the FASB issued ASU 2018-15, Intangibles - Goodwill and Other - Internal-Use Software (Subtopic 350-40): Customer's Accounting for Implementation Costs Incurred in a Cloud Computing Arrangement that is a Service Contract (A Consensus of the FASB Emerging Issues Task Force) . ASU 2018-15 provides additional guidance on the accounting for costs of implementation activities performed in a cloud computing arrangement (i.e., hosting arrangement) that is a service contract. The new guidance amends the definition of a hosting arrangement and requires a customer in a hosting arrangement that is a service contract to capitalize certain implementation costs following the internal use software capitalization criteria within Accounting Standards Codification ("ASC") Subtopic 350-40. We adopted ASU 2018-15 on May 1, 2020, applying the guidance prospectively, and the adoption of this standard did not have an impact on our consolidated financial statements. Historically we have not capitalized implementation costs associated with cloud computing arrangements that are service contracts following the guidance in Subtopic 350-40, but we will do so pursuant to the clarifications provided in the new guidance on a go forward basis. In June 2016, the FASB issued ASU No. 2016-13, Financial Instruments Credit Losses (Topic 326): Measurement of Credit Losses on Financial Instruments , which requires the measurement and recognition of expected credit losses for financial assets held at amortized cost, including trade receivables. ASU No. 2016-13 replaces the existing incurred loss impairment model with an expected loss model that requires the use of forward-looking information to calculate credit loss estimates. This guidance is effective for annual reporting periods beginning after December 15, 2019, with early adoption permitted. On May 1, 2020, we adopted ASU 2016-13 using the modified retrospective method applied for all financial assets measured at amortized cost. In estimating the allowance for credit losses, we considered the age of the accounts receivable, our historical write-offs, and the historical creditworthiness of the customer, among other factors. Should any of these factors change, the estimates made by us will also change accordingly, which could affect the level of our future allowances. We also analyzed future expected credit losses given ever present changes to future risks in projected economic conditions and future risks of customer collection. The net impact of the adoption of ASU 2016-13 was immaterial on our consolidated financial statements. In December 2019, the FASB issued ASU 2019-12, Income Taxes (Topic 740): Simplifying the Accounting for Income Taxes . The new guidance eliminates certain exceptions related to the approach for intra-period tax allocation, the methodology for calculating taxes during the quarters and the recognition of deferred tax liabilities for outside basis differences. This guidance also simplifies aspects of the accounting for franchise taxes and changes in tax laws or rates, as well as clarifies the accounting for transactions that result in a step-up in the tax basis of goodwill. ASU 2019-12 will be effective for the Company beginning May 1, 2021 and would require us to recognize a cumulative effect adjustment to the opening balance of reinvested earnings, if applicable. We do not expect our adoption of this guidance to have a material impact on our consolidated financial statements. |
Revenue Recognition (Tables)
Revenue Recognition (Tables) | 6 Months Ended |
Oct. 31, 2020 | |
Revenue from Contract with Customer [Abstract] | |
Summary of Contract Balances | October 31, April 30, (in thousands) Deferred revenue, current 31,206 34,227 Deferred revenue, long-term — — Total deferred revenue $ 31,206 $ 34,227 |
Schedule of Revenue by Geography | The Company’s revenue by geography is as follows: Three Months Ended Six Months Ended 2020 2019 2020 2019 (in thousands) (in thousands) Revenues: Domestic $ 23,659 $ 22,763 $ 46,799 $ 44,174 International 4,222 5,447 8,360 11,419 $ 27,881 $ 28,210 $ 55,159 $ 55,593 |
Leases (Tables)
Leases (Tables) | 6 Months Ended |
Oct. 31, 2020 | |
Leases [Abstract] | |
Balance Sheet Information Related to Operating Leases | Balance sheet information related to operating leases is as follows (in thousands): October 31, 2020 Assets Right of use assets $ 1,813 Liabilities Current lease liabilities 797 Long-term lease liabilities 1,137 Total liabilities $ 1,934 |
Lease Cost Information | Lease cost information related to operating leases is as follows (in thousands): Three Months Ended October 31, 2020 Six Months Ended October 31, 2020 Lease cost Operating lease cost $ 197 $ 391 Short-term lease cost 161 319 Variable lease cost 76 145 Total lease cost $ 434 $ 855 Weighted average information associated with the measurement of the Company’s remaining operating lease obligations is as follows: October 31, 2020 Weighted average remaining lease term 2.8 years Weighted average discount rate 3.3 % |
Maturity of Operating Lease Liabilities | The following table summarizes the maturity of the Company’s operating lease liabilities as of October 31, 2020 (in thousands): FY2021 $ 407 FY2022 711 FY2023 486 FY2024 361 FY2025 20 Thereafter — Total operating lease payments $ 1,985 Less imputed interest (51) Total operating lease liabilities $ 1,934 |
Payments to be Received, Maturity | Lease payments to be received as of October 31, 2020 are as follows (in thousands): FY2021 $ 93 FY2022 149 FY2023 96 FY2024 98 FY2025 100 Thereafter 50 Total $ 586 |
Earnings Per Common Share (Tabl
Earnings Per Common Share (Tables) | 6 Months Ended |
Oct. 31, 2020 | |
Earnings Per Share [Abstract] | |
Basic Earnings Per Common Share | The following tables set forth the computation of basic earnings per common share and diluted earnings per common share (in thousands except for per share amounts): Basic earnings per common share: Three Months Ended Six Months Ended Class A Class B Class A Class B Distributed earnings $ 0.11 $ 0.11 $ 0.22 $ 0.22 Undistributed losses (0.09) (0.09) (0.14) (0.14) Total $ 0.02 $ 0.02 $ 0.08 $ 0.08 Distributed earnings $ 3,375 $ 201 $ 6,745 $ 402 Undistributed losses (2,722) (162) (4,172) (249) Total $ 653 $ 39 $ 2,573 $ 153 Basic weighted average common shares outstanding 30,667 1,822 30,592 1,822 Three Months Ended Six Months Ended Class A Class B Class A Class B Distributed earnings $ 0.11 $ 0.11 $ 0.22 $ 0.22 Undistributed losses $ (0.05) $ (0.05) $ (0.13) $ (0.13) Total $ 0.06 $ 0.06 $ 0.09 $ 0.09 Distributed earnings $ 3,303 $ 202 $ 6,552 $ 403 Undistributed losses $ (1,645) $ (101) $ (3,810) $ (234) Total $ 1,658 $ 101 $ 2,742 $ 169 Basic weighted average common shares outstanding $ 29,787 $ 1,822 $ 29,618 $ 1,822 |
Diluted Earnings Per Share for Class A Common Shares Using If-Converted Method | Diluted EPS for Class A Common Shares Using the If-Converted Method Three Months Ended October 31, 2020 Undistributed Class A EPS* Per Basic $ 653 30,667 $ 0.02 Common Stock Equivalents — 407 — 653 31,074 0.02 Class B Common Share Conversion 39 1,822 — Diluted EPS for Class A Common Shares $ 692 32,896 $ 0.02 Six Months Ended October 31, 2020 Undistributed Class A EPS* Per Basic $ 2,573 30,592 $ 0.08 Common Stock Equivalents — 505 — 2,573 31,097 0.08 Class B Common Share Conversion 153 1,822 — Diluted EPS for Class A Common Shares $ 2,726 32,919 $ 0.08 Three Months Ended October 31, 2019 Undistributed Class A EPS* Per Basic $ 1,658 29,787 $ 0.06 Common Stock Equivalents — 701 — 1,658 30,488 0.05 Class B Common Share Conversion 101 1,822 — Diluted EPS for Class A Common Shares $ 1,759 32,310 $ 0.05 Six Months Ended October 31, 2019 Undistributed Class A EPS* Per Basic $ 2,742 29,618 $ 0.09 Common Stock Equivalents — 626 — 2,742 30,244 0.09 Class B Common Share Conversion 169 1,822 — Diluted EPS for Class A Common Shares $ 2,911 32,066 $ 0.09 |
Diluted Earnings Per Share for Class B Common Shares Using Two-Class Method | Diluted EPS for Class B Common Shares Using the Two-Class Method Three Months Ended October 31, 2020 Undistributed Class B EPS* Per Basic $ 39 1,822 $ 0.02 Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares 2 — — Diluted EPS for Class B Common Shares $ 41 1,822 $ 0.02 Six Months Ended October 31, 2020 Undistributed Class B EPS* Per Basic $ 153 $ 1,822 $ 0.08 Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares 4 — — Diluted EPS for Class B Common Shares $ 157 $ 1,822 $ 0.09 Three Months Ended October 31, 2019 Undistributed Class B EPS* Per Basic $ 101 $ 1,822 $ 0.06 Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares 3 — — Diluted EPS for Class B Common Shares $ 104 $ 1,822 $ 0.06 Six Months Ended October 31, 2019 Undistributed Class B EPS* Per Basic $ 169 $ 1,822 $ 0.09 Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares 6 — — Diluted EPS for Class B Common Shares $ 175 $ 1,822 $ 0.10 _______________ *Amounts adjusted for rounding |
Fair Value of Financial Instr_2
Fair Value of Financial Instruments (Tables) | 6 Months Ended |
Oct. 31, 2020 | |
Fair Value Disclosures [Abstract] | |
Assets and Liabilities Measured at Fair Value on Recurring Basis | The following tables present our assets and liabilities that we measured at fair value on a recurring basis as of October 31, 2020 and April 30, 2020, and indicate the fair value hierarchy of the valuation techniques we used to determine such fair value (in thousands): October 31, 2020 Quoted Prices Significant Significant Balance Cash equivalents $ 74,902 $ — $ — $ 74,902 Marketable securities 11,725 1,104 — 12,829 Total $ 86,627 $ 1,104 $ — $ 87,731 April 30, 2020 Quoted Prices Significant Significant Balance Cash equivalents 75,256 — — 75,256 Marketable securities 11,758 3,104 — 14,862 Total 87,014 3,104 — 90,118 |
Industry Segments (Tables)
Industry Segments (Tables) | 6 Months Ended |
Oct. 31, 2020 | |
Segment Reporting [Abstract] | |
Segment Operating Profit or Loss | In the following table, we have broken down the intersegment transactions applicable to the three months ended October 31, 2020 and 2019 (in thousands): Three Months Ended October 31, Six Months Ended October 31, 2020 2019 2020 2019 Revenues: Supply Chain Management $ 22,297 $ 23,487 $ 44,033 $ 45,834 IT Consulting 5,033 4,158 10,059 8,536 Other 551 565 1,067 1,223 $ 27,881 $ 28,210 $ 55,159 $ 55,593 Operating income (loss): Supply Chain Management $ 3,983 $ 4,360 $ 8,087 $ 8,211 IT Consulting 103 (12) 209 166 Other (3,455) (3,505) (6,780) (6,737) $ 631 $ 843 $ 1,516 $ 1,640 Capital expenditures: Supply Chain Management $ 45 $ 44 $ 84 $ 75 IT Consulting — — — — Other — 84 79 163 $ 45 $ 128 $ 163 $ 238 Capitalized software: Supply Chain Management $ 126 $ 605 $ 371 $ 1,890 IT Consulting — — — — Other — — — — $ 126 $ 605 $ 371 $ 1,890 Depreciation and amortization: Supply Chain Management $ 1,415 $ 2,089 $ 3,001 $ 4,241 IT Consulting — 1 1 3 Other 99 93 192 184 $ 1,514 $ 2,183 $ 3,194 $ 4,428 Earnings (loss) before income taxes: Supply Chain Management $ 3,845 $ 4,480 $ 8,220 $ 8,516 IT Consulting 103 (12) 207 166 Other (3,359) (2,913) (5,621) (5,805) $ 589 $ 1,555 $ 2,806 $ 2,877 |
Revenue Recognition - Additiona
Revenue Recognition - Additional Information (Details) - USD ($) | 3 Months Ended | 6 Months Ended | |||
Oct. 31, 2020 | Oct. 31, 2019 | Oct. 31, 2020 | Oct. 31, 2019 | Apr. 30, 2020 | |
Revenue Recognition [Line Items] | |||||
Amounts received for reimbursement of travel and other out-of-pocket expenses | $ 12,000 | $ 500,000 | $ 16,000 | $ 900,000 | |
Deferred revenue recognized | 14,600,000 | 25,000,000 | |||
Transaction price allocated to remaining performance obligations | 78,000,000 | 78,000,000 | |||
Total deferred commissions | 31,206,000 | 31,206,000 | $ 34,227,000 | ||
Impairment losses | 0 | 0 | |||
Sales Commissions | |||||
Revenue Recognition [Line Items] | |||||
Total deferred commissions | 3,100,000 | 3,100,000 | $ 3,500,000 | ||
Amortization of sales commissions | $ 500,000 | $ 900,000 | |||
Minimum | |||||
Revenue Recognition [Line Items] | |||||
Contractual period of maintenance contract | 1 year | ||||
Maximum | |||||
Revenue Recognition [Line Items] | |||||
Contractual period of maintenance contract | 3 years |
Revenue Recognition - Summary o
Revenue Recognition - Summary of Contract Balances (Details) - USD ($) $ in Thousands | Oct. 31, 2020 | Apr. 30, 2020 |
Contract Balances: | ||
Deferred revenue, current | $ 31,206 | $ 34,227 |
Deferred revenue, long-term | 0 | 0 |
Total deferred revenue | $ 31,206 | $ 34,227 |
Revenue Recognition - Remaining
Revenue Recognition - Remaining Performance Obligation (Details) - Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2020-11-01 | Oct. 31, 2020 |
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] | |
Revenue, remaining performance obligation, expected timing of satisfaction, period | 12 months |
Remaining revenue to be recognized | 66.66% |
Revenue Recognition - Disaggreg
Revenue Recognition - Disaggregated Revenue (Details) - USD ($) $ in Thousands | 3 Months Ended | 6 Months Ended | ||
Oct. 31, 2020 | Oct. 31, 2019 | Oct. 31, 2020 | Oct. 31, 2019 | |
Revenues: | ||||
Revenues | $ 27,881 | $ 28,210 | $ 55,159 | $ 55,593 |
Domestic | ||||
Revenues: | ||||
Revenues | 23,659 | 22,763 | 46,799 | 44,174 |
International | ||||
Revenues: | ||||
Revenues | $ 4,222 | $ 5,447 | $ 8,360 | $ 11,419 |
Leases - Additional Information
Leases - Additional Information (Details) $ in Thousands | 3 Months Ended | 6 Months Ended |
Oct. 31, 2020USD ($) | Oct. 31, 2020USD ($) | |
Lessee, Lease, Description [Line Items] | ||
Cash paid included in measurement of operating lease liabilities | $ 900 | |
Lease income | $ 79 | $ 150 |
Minimum | ||
Lessee, Lease, Description [Line Items] | ||
Lease term | 3 years | 3 years |
Maximum | ||
Lessee, Lease, Description [Line Items] | ||
Lease term | 5 years | 5 years |
Leases - Supplemental Balance S
Leases - Supplemental Balance Sheet Information (Details) - USD ($) $ in Thousands | Oct. 31, 2020 | Apr. 30, 2020 |
Assets | ||
Right of use assets | $ 1,813 | $ 2,053 |
Liabilities | ||
Current lease liabilities | 797 | 763 |
Long-term lease liabilities | 1,137 | $ 1,424 |
Total liabilities | $ 1,934 |
Leases - Lease Cost Information
Leases - Lease Cost Information (Details) - USD ($) $ in Thousands | 3 Months Ended | 6 Months Ended |
Oct. 31, 2020 | Oct. 31, 2020 | |
Leases [Abstract] | ||
Operating lease cost | $ 197 | $ 391 |
Short-term lease cost | 161 | 319 |
Variable lease cost | 76 | 145 |
Total lease cost | $ 434 | $ 855 |
Leases - Weighted Average Infor
Leases - Weighted Average Information (Details) | Oct. 31, 2020 |
Leases [Abstract] | |
Weighted average remaining lease term | 2 years 9 months 18 days |
Weighted average discount rate | 3.30% |
Leases - Summary of Operating L
Leases - Summary of Operating Lease Maturities (Details) $ in Thousands | Oct. 31, 2020USD ($) |
Operating Lease Liabilities Maturity | |
FY2021 | $ 407 |
FY2022 | 711 |
FY2023 | 486 |
FY2024 | 361 |
FY2025 | 20 |
Thereafter | 0 |
Total operating lease payments | 1,985 |
Less imputed interest | (51) |
Total operating lease liabilities | $ 1,934 |
Leases - Lease Rental Receivabl
Leases - Lease Rental Receivables (Details) $ in Thousands | Oct. 31, 2020USD ($) |
Lease Payments to be Received | |
FY2021 | $ 93 |
FY2022 | 149 |
FY2023 | 96 |
FY2024 | 98 |
FY2025 | 100 |
Thereafter | 50 |
Total | $ 586 |
Declaration of Dividend Payab_2
Declaration of Dividend Payable (Details) - $ / shares | Aug. 19, 2020 | Oct. 31, 2020 | Oct. 31, 2019 | Oct. 31, 2020 | Oct. 31, 2019 | ||
Dividends [Abstract] | |||||||
Cash dividends declared per common share (in usd per share) | $ 0.11 | $ 0.11 | [1] | $ 0.11 | [1] | $ 0.22 | $ 0.22 |
[1] | Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.02 and $0.06 for the three months ended October 31, 2020 and 2019 and $0.09 and $0.10 for the six months ended October 31, 2020 and 2019. See Note E to the Condensed Consolidated Financial Statements. |
Earnings Per Common Share - Add
Earnings Per Common Share - Additional Information (Details) | 3 Months Ended | 6 Months Ended | ||
Oct. 31, 2020shares | Oct. 31, 2019shares | Oct. 31, 2020$ / sharesshares | Oct. 31, 2019shares | |
Earnings Per Share [Line Items] | ||||
Share conversion ratio | 1 | |||
Options to purchase excluded (in shares) | 1,842,587 | 12,174 | 1,426,760 | 330,620 |
Options to purchase outstanding (in shares) | 4,378,453 | 4,333,117 | 4,378,453 | 4,333,117 |
Class A Common Shares | ||||
Earnings Per Share [Line Items] | ||||
Dividends preference (in usd per share) | $ / shares | $ 0.05 |
Earnings Per Common Share - Bas
Earnings Per Common Share - Basic Earnings Per Common Share (Details) - USD ($) $ / shares in Units, shares in Thousands, $ in Thousands | 3 Months Ended | 6 Months Ended | |||
Oct. 31, 2020 | Oct. 31, 2019 | Oct. 31, 2020 | Oct. 31, 2019 | ||
Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items] | |||||
Total (in usd per share) | [1] | $ 0.02 | $ 0.06 | $ 0.08 | $ 0.09 |
Basic weighted average common shares outstanding (in shares) | 32,489 | 31,609 | 32,414 | 31,440 | |
Class A Common Shares | |||||
Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items] | |||||
Distributed earnings (in usd per share) | $ 0.11 | $ 0.11 | $ 0.22 | $ 0.22 | |
Undistributed losses (in usd per share) | (0.09) | (0.05) | (0.14) | (0.13) | |
Total (in usd per share) | $ 0.02 | $ 0.06 | $ 0.08 | $ 0.09 | |
Distributed earnings | $ 3,375 | $ 3,303 | $ 6,745 | $ 6,552 | |
Undistributed losses | (2,722) | (1,645) | (4,172) | (3,810) | |
Total | $ 653 | $ 1,658 | $ 2,573 | $ 2,742 | |
Basic weighted average common shares outstanding (in shares) | 30,667 | 29,787 | 30,592 | 29,618 | |
Class B Common Shares | |||||
Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items] | |||||
Distributed earnings (in usd per share) | $ 0.11 | $ 0.11 | $ 0.22 | $ 0.22 | |
Undistributed losses (in usd per share) | (0.09) | (0.05) | (0.14) | (0.13) | |
Total (in usd per share) | $ 0.02 | $ 0.06 | $ 0.08 | $ 0.09 | |
Distributed earnings | $ 201 | $ 202 | $ 402 | $ 403 | |
Undistributed losses | (162) | (101) | (249) | (234) | |
Total | $ 39 | $ 101 | $ 153 | $ 169 | |
Basic weighted average common shares outstanding (in shares) | 1,822 | 1,822 | 1,822 | 1,822 | |
[1] | Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.02 and $0.06 for the three months ended October 31, 2020 and 2019 and $0.09 and $0.10 for the six months ended October 31, 2020 and 2019. See Note E to the Condensed Consolidated Financial Statements. |
Earnings Per Common Share - Dil
Earnings Per Common Share - Diluted Earnings per Share for Class A Common Shares Using If-Converted Method (Details) - USD ($) $ / shares in Units, shares in Thousands, $ in Thousands | 3 Months Ended | 6 Months Ended | |||
Oct. 31, 2020 | Oct. 31, 2019 | Oct. 31, 2020 | Oct. 31, 2019 | ||
Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items] | |||||
Basic weighted average common shares outstanding (in shares) | 32,489 | 31,609 | 32,414 | 31,440 | |
Diluted, Class A Common Shares (in shares) | 32,896 | 32,310 | 32,919 | 32,066 | |
Basic EPS (in usd per share) | [1] | $ 0.02 | $ 0.06 | $ 0.08 | $ 0.09 |
Diluted EPS (in usd per share) | [1] | $ 0.02 | $ 0.05 | $ 0.08 | $ 0.09 |
Class A Common Shares | |||||
Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items] | |||||
Undistributed & distributed earnings | $ 653 | $ 1,658 | $ 2,573 | $ 2,742 | |
Undistributed & distributed earnings, class B conversion (in usd per share) | 39 | 101 | 153 | 169 | |
Net earnings | $ 692 | $ 1,759 | $ 2,726 | $ 2,911 | |
Basic weighted average common shares outstanding (in shares) | 30,667 | 29,787 | 30,592 | 29,618 | |
Common Stock Equivalents (in shares) | 407 | 701 | 505 | 626 | |
Weighted average shares including common stock equivalents, diluted (in shares) | 31,074 | 30,488 | 31,097 | 30,244 | |
Class B Conversion (in shares) | 1,822 | 1,822 | 1,822 | 1,822 | |
Diluted, Class A Common Shares (in shares) | 32,896 | 32,310 | 32,919 | 32,066 | |
Basic EPS (in usd per share) | $ 0.02 | $ 0.06 | $ 0.08 | $ 0.09 | |
Diluted EPS (in usd per share) | $ 0.02 | $ 0.05 | $ 0.08 | $ 0.09 | |
[1] | Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.02 and $0.06 for the three months ended October 31, 2020 and 2019 and $0.09 and $0.10 for the six months ended October 31, 2020 and 2019. See Note E to the Condensed Consolidated Financial Statements. |
Earnings Per Common Share - D_2
Earnings Per Common Share - Diluted Earnings per Share for Class B Common Shares Using Two-Class Method (Details) - USD ($) $ / shares in Units, shares in Thousands, $ in Thousands | 3 Months Ended | 6 Months Ended | |||
Oct. 31, 2020 | Oct. 31, 2019 | Oct. 31, 2020 | Oct. 31, 2019 | ||
Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items] | |||||
Basic weighted average common shares outstanding (in shares) | 32,489 | 31,609 | 32,414 | 31,440 | |
Diluted EPS for class B common shares (in shares) | 32,896 | 32,310 | 32,919 | 32,066 | |
Basic EPS (in usd per share) | [1] | $ 0.02 | $ 0.06 | $ 0.08 | $ 0.09 |
Diluted EPS (in usd per share) | [1] | $ 0.02 | $ 0.05 | $ 0.08 | $ 0.09 |
Class B Common Shares | |||||
Earnings Per Share, Diluted, by Common Class, Including Two Class Method [Line Items] | |||||
Undistributed & distributed earnings | $ 39 | $ 101 | $ 153 | $ 169 | |
Reallocation of undistributed earnings/losses from Class A Common Shares to Class B Common Shares | 2 | 3 | 4 | 6 | |
Net earnings | $ 41 | $ 104 | $ 157 | $ 175 | |
Basic weighted average common shares outstanding (in shares) | 1,822 | 1,822 | 1,822 | 1,822 | |
Diluted EPS for class B common shares (in shares) | 1,822 | 1,822 | 1,822 | 1,822 | |
Basic EPS (in usd per share) | $ 0.02 | $ 0.06 | $ 0.08 | $ 0.09 | |
Diluted EPS (in usd per share) | $ 0.02 | $ 0.06 | $ 0.09 | $ 0.10 | |
[1] | Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.02 and $0.06 for the three months ended October 31, 2020 and 2019 and $0.09 and $0.10 for the six months ended October 31, 2020 and 2019. See Note E to the Condensed Consolidated Financial Statements. |
Stock-Based Compensation (Detai
Stock-Based Compensation (Details) - USD ($) $ in Thousands | 3 Months Ended | 6 Months Ended | ||
Oct. 31, 2020 | Oct. 31, 2019 | Oct. 31, 2020 | Oct. 31, 2019 | |
Share-based Payment Arrangement [Abstract] | ||||
Option to purchase common stock (in shares) | 1,120,000 | 1,063,000 | ||
Stock-based compensation expense | $ 700 | $ 500 | $ 1,198 | $ 946 |
Income tax excess benefit | 38 | $ 412 | $ 300 | $ 500 |
Stock options exercised (in shares) | 277,197 | 650,943 | ||
Total intrinsic value of options exercised | $ 1,600 | $ 3,200 | ||
Unrecognized compensation cost related to unvested stock option | $ 7,700 | $ 7,700 | ||
Weighted average period for unrecognized compensation cost | 1 year 11 months 26 days |
Fair Value of Financial Instr_3
Fair Value of Financial Instruments (Details) - USD ($) $ in Thousands | Oct. 31, 2020 | Apr. 30, 2020 |
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] | ||
Cash equivalents | $ 74,902 | $ 75,256 |
Marketable securities | 12,829 | 14,862 |
Total | 87,731 | 90,118 |
Quoted Prices in Active Markets for Identical Assets (Level 1) | ||
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] | ||
Cash equivalents | 74,902 | 75,256 |
Marketable securities | 11,725 | 11,758 |
Total | 86,627 | 87,014 |
Significant Other Observable Inputs (Level 2) | ||
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] | ||
Cash equivalents | 0 | 0 |
Marketable securities | 1,104 | 3,104 |
Total | 1,104 | 3,104 |
Significant Unobservable Inputs (Level 3) | ||
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] | ||
Cash equivalents | 0 | 0 |
Marketable securities | 0 | 0 |
Total | $ 0 | $ 0 |
Stock Repurchases (Details)
Stock Repurchases (Details) - Class A Common Shares - USD ($) $ in Millions | 218 Months Ended | |
Oct. 31, 2020 | Aug. 19, 2002 | |
Equity, Class of Treasury Stock [Line Items] | ||
Common stock shares repurchased (in shares) | 4,588,632 | |
Cost of common stock repurchased | $ 25.6 | |
Shares Stock Repurchase Plan, August 19, 2002 | ||
Equity, Class of Treasury Stock [Line Items] | ||
Approved number of shares to be repurchased | 2,000,000 | |
Common stock shares repurchased (in shares) | 1,053,679 | |
Cost of common stock repurchased | $ 6.2 |
Industry Segments - Additional
Industry Segments - Additional Information (Details) | 6 Months Ended |
Oct. 31, 2020segmentgroup | |
Segment Reporting [Abstract] | |
Number of major operating segments | segment | 3 |
Number of major product and service groups | group | 6 |
Industry Segments - Segment Inf
Industry Segments - Segment Information (Details) - USD ($) $ in Thousands | 3 Months Ended | 6 Months Ended | ||
Oct. 31, 2020 | Oct. 31, 2019 | Oct. 31, 2020 | Oct. 31, 2019 | |
Segment Reporting Information [Line Items] | ||||
Revenues | $ 27,881 | $ 28,210 | $ 55,159 | $ 55,593 |
Operating income (loss) | 631 | 843 | 1,516 | 1,640 |
Capital expenditures | 45 | 128 | 163 | 238 |
Capitalized software | 126 | 605 | 371 | 1,890 |
Depreciation and amortization | 1,514 | 2,183 | 3,194 | 4,428 |
Earnings (loss) before income taxes | 589 | 1,555 | 2,806 | 2,877 |
Supply Chain Management | ||||
Segment Reporting Information [Line Items] | ||||
Revenues | 22,297 | 23,487 | 44,033 | 45,834 |
Operating income (loss) | 3,983 | 4,360 | 8,087 | 8,211 |
Capital expenditures | 45 | 44 | 84 | 75 |
Capitalized software | 126 | 605 | 371 | 1,890 |
Depreciation and amortization | 1,415 | 2,089 | 3,001 | 4,241 |
Earnings (loss) before income taxes | 3,845 | 4,480 | 8,220 | 8,516 |
IT Consulting | ||||
Segment Reporting Information [Line Items] | ||||
Revenues | 5,033 | 4,158 | 10,059 | 8,536 |
Operating income (loss) | 103 | (12) | 209 | 166 |
Capital expenditures | 0 | 0 | 0 | 0 |
Capitalized software | 0 | 0 | 0 | 0 |
Depreciation and amortization | 0 | 1 | 1 | 3 |
Earnings (loss) before income taxes | 103 | (12) | 207 | 166 |
Other | ||||
Segment Reporting Information [Line Items] | ||||
Revenues | 551 | 565 | 1,067 | 1,223 |
Operating income (loss) | (3,455) | (3,505) | (6,780) | (6,737) |
Capital expenditures | 0 | 84 | 79 | 163 |
Capitalized software | 0 | 0 | 0 | 0 |
Depreciation and amortization | 99 | 93 | 192 | 184 |
Earnings (loss) before income taxes | $ (3,359) | $ (2,913) | $ (5,621) | $ (5,805) |
Subsequent Event (Details)
Subsequent Event (Details) - $ / shares | Nov. 18, 2020 | Aug. 19, 2020 | Oct. 31, 2020 | [1] | Oct. 31, 2019 | [1] | Oct. 31, 2020 | Oct. 31, 2019 |
Subsequent Event [Line Items] | ||||||||
Cash dividends declared per common share (in usd per share) | $ 0.11 | $ 0.11 | $ 0.11 | $ 0.22 | $ 0.22 | |||
Subsequent Event | ||||||||
Subsequent Event [Line Items] | ||||||||
Cash dividends declared per common share (in usd per share) | $ 0.11 | |||||||
[1] | Basic per share amounts are the same for Class A and Class B shares. Diluted per share amounts for Class A shares are shown above. Diluted earnings per share for Class B shares under the two-class method are $0.02 and $0.06 for the three months ended October 31, 2020 and 2019 and $0.09 and $0.10 for the six months ended October 31, 2020 and 2019. See Note E to the Condensed Consolidated Financial Statements. |