XML 17 R2.htm IDEA: XBRL DOCUMENT
v3.23.1

Pay vs Performance Disclosure | 12 Months Ended
--- | ---
Dec. 31, 2022 USD ($) | Dec. 31, 2021 USD ($) | Dec. 31, 2020 USD ($)
Pay vs Performance Disclosure [Table] |  |  |
Pay vs Performance [Table Text Block] | As described in greater detail in “Executive Compensation – Compensation Discussion and Analysis,” our executive compensation program reflects a variable pay-for-performance philosophy. The following table and related disclosures provide further “pay versus performance” disclosure with respect to our chief executive officer, also referred to as our principal executive officer (PEO), and our other named executive officers (NEOs), as contemplated by Item 402(v) of Regulation S-K.
Year | Summary Compensation Table Total to PEO 1 |  | Compensation Actually Paid to PEO 2 |  | Average Summary Compensation Table Total For Non-PEO NEOs 3 |  | Average Compensation Actually Paid to Non-PEO NEOs 4 |  | Value of Initial Fixed $100 Investment Based On: |  | Net Income (millions)7 |  | Year-Over-Year CV Bookings Growth 8
|  |  |  |  |  |  |  |  | Company TSR 5 |  | Peer Group TSR 6 |  |  |  |
(a) | (b) |  | (c) |  | (d) |  | (e) |  | (f) |  | (g) |  | (h) |  | (i)
2022 | $ | 992,630 |  | $ | 992,630 |  | $ | 978,306 |  | $ | 449,918 |  | $ | 86 |  | $ | 126 |  | $ | 21.8 |  | 0.8%
2021 | $ | 1,552,268 |  | $ | 1,552,268 |  | $ | 1,134,598 |  | $ | 1,324,876 |  | $ | 141 |  | $ | 162 |  | $ | 24.8 |  | 16.0%
2020 | $ | 681,843 |  | $ | 681,843 |  | $ | 860,550 |  | $ | 873,033 |  | $ | 100 |  | $ | 128 |  | $ | 10.0 |  | -3.5%
(1) The dollar amounts reported in column (b) are the amounts of total compensation reported for Mr. Colony (our Chief Executive Officer or PEO) for each corresponding year in the “Total” column of the Summary Compensation Table. Refer to “Executive Compensation –Summary Compensation Table.” (2) The dollar amounts reported in column (c) represent the amount of “compensation actually paid” to Mr. Colony, as computed in accordance with Item 402(v) of Regulation S-K. Because Mr. Colony did not receive or hold any equity awards during the years reflected in the table and we do not maintain a pension in which Mr. Colony participates, no additions or deductions from Summary Compensation Table (SCT) total compensation for our PEO are needed to determine the amount of “compensation actually paid” in accordance with Item 402(v) of Regulation S-K. (3) The dollar amounts reported in column (d) represent the average of the amounts reported for the Company’s named executive officers (NEOs) as a group (excluding Mr. Colony, who has served as our CEO in each of the covered years) in the “Total” column of the Summary Compensation Table in each applicable year. The names of each of the NEOs (excluding Mr. Colony) included for purposes of calculating the average amounts in each applicable year are as follow: (i) for 2022, L. Christian Finn, Kelley Hippler, Carrie Johnson, Sharyn Leaver, and Sarah Le Roy; (ii) for 2021, Scott Chouinard, Ryan Darrah, Michael Doyle, L. Christian Finn, Kelley Hippler, and Carrie Johnson; and (iii) for 2020, Michael Doyle, Kelley Hippler, Carrie Johnson, and Steve Peltzman. (4) The dollar amounts reported in column (e) represent the average amount of “compensation actually paid” (CAP) to the NEOs as a group (excluding Mr. Colony), as computed in accordance with Item 402(v) of Regulation S-K. The dollar amounts do not reflect the average amount of compensation earned by or paid to the NEOs as a group (excluding Mr. Colony) during the applicable year. In accordance with the requirements of Item 402(v) of Regulation S-K, the following adjustments were made to the average compensation for the NEOs as a group (excluding Mr. Colony) for each year to determine the compensation actually paid:
Average Non-PEO NEOs SCT Total to CAP Reconciliation: |  |  |  |  |  |  |
Year | Salary |  | Bonus and Non-Equity Incentive Compensation |  | Other Compensation |  | SCT Total |  | Reported Value of Equity Awards |  | Equity Award Adjustments |  | CAP |
|  |  |  |  | (i) |  |  |  | (ii) |  | (iii) |  |  |
2022 | $ | 355,306 |  | $ | 149,711 |  | $ | 8,317 |  | $ | 978,306 |  | $ | (464,972 | ) | $ | (63,417 | ) | $ | 449,918 |
2021 | $ | 290,528 |  | $ | 376,641 |  | $ | 104,942 |  | $ | 1,134,598 |  | $ | (362,487 | ) | $ | 552,765 |  | $ | 1,324,876 |
2020 | $ | 369,916 |  | $ | 141,109 |  | $ | 12,038 |  | $ | 860,550 |  | $ | (337,488 | ) | $ | 349,971 |  | $ | 873,033 |
(i) Reflects "all other compensation" reported in the SCT for each year shown. (ii) Represents the grant date fair value of equity-based awards granted each year as reported in the “Stock Awards” column in the Summary Compensation Table for the applicable year. Because we do not maintain a pension in which any NEO participates, no adjustments from the SCT total related to pension value are needed to calculate “compensation actually paid” in accordance with Item 402(v) of Regulation S-K. (iii) The equity award adjustments for each applicable year include the addition (or subtraction, as applicable) of the following: (i) the year-end fair value of any equity awards granted in the applicable year that are outstanding and unvested as of the end of the year; (ii) the amount of change as of the end of the applicable year (from the end of the prior fiscal year) in fair value of any awards granted in prior years that are outstanding and unvested as of the end of the applicable year; (iii) for awards that are granted and vest in same applicable year, the fair value as of the vesting date; (iv) for awards granted in prior years that vest in the applicable year, the amount equal to the change as of the vesting date (from the end of the prior fiscal year) in fair value; (v) for awards granted in prior years that are determined to fail to meet the applicable vesting conditions during the applicable year, a deduction for the amount equal to the fair value at the end of the prior fiscal year; and (vi) the dollar value of any dividends or other earnings paid on awards in the applicable year prior to the vesting date that are not otherwise reflected in the fair value of such award or included in any other component of total compensation for the applicable year. The valuation assumptions used to calculate fair values did not materially differ from those disclosed at the time of grant. The amounts deducted or added in calculating the equity award adjustments are as follows:
Average Non-PEO NEOs Equity Award Adjustments: |  |  |  |  |  |
| 2020 Average |  | 2021 Average |  | 2022 Average |
Plus: Fair Value for Stock Awards Granted in the Covered Year that are Unvested at End of Year | $ | 392,907 |  | $ | 450,772 |  | $ | 257,486 |
Change in Fair Value of Outstanding Unvested Stock Awards from Prior Year | $ | 2,451 |  | $ | 121,557 |  | $ | (152,787 | )
Change in Fair Value of Stock Awards from Prior Years that Vested in the Covered Year | $ | (45,387 | ) | $ | 27,727 |  | $ | (71,058 | )
Less: Fair Value of Stock Awards Forfeited during the Covered Year | - |  | $ | (47,291 | ) | $ | (97,057 | )
Total Adjustment | $ | 349,971 |  | $ | 552,765 |  | $ | (63,417 | )
(5) Company TSR is calculated to show the cumulative stockholder return on our common stock during the covered period. We did not pay any dividends in the covered years. (6) Represents the weighted peer group TSR, weighted according to the respective companies’ stock market capitalization at the beginning of each period for which a return is indicated. The peer group used for this purpose is the following published industry index: S&P Small Cap 600 Information Technology. (7) The dollar amounts reported represent the amount of net income reflected in our audited financial statements for the applicable year. (8) Year-over-year CV bookings growth is the percentage increase in bookings of our CV products with respect to a given covered year compared to the prior covered year. Financial Performance Measures As described in greater detail in “Executive Compensation – Compensation Discussion and Analysis,” our executive compensation program reflects a variable pay-for-performance philosophy. The most important financial performance measures we used to link executive compensation actually paid to our NEOs, for the most recently completed fiscal year, to our performance are as follows: • CV Bookings • Modified Operating Income • Year-Over-Year CV Bookings Growth Analysis of the Information Presented in the Pay versus Performance Table While we utilize several performance measures to align executive compensation with our performance, all of these measures are not presented in the above Pay versus Performance Table. Moreover, we generally seek to incentivize long-term performance, and therefore do not specifically align our performance measures with compensation that is actually paid (as computed in accordance with Item 402(v) of Regulation S-K) for a particular year. In accordance with Item 402(v) of Regulation S-K, we are providing the following descriptions of the relationships between information presented in the Pay versus Performance Table. |  |
Company Selected Measure Name | Year-Over-Year CV Bookings Growth |  |
Named Executive Officers, Footnote [Text Block] | (1) The dollar amounts reported in column (b) are the amounts of total compensation reported for Mr. Colony (our Chief Executive Officer or PEO) for each corresponding year in the “Total” column of the Summary Compensation Table. Refer to “Executive Compensation –Summary Compensation Table.” |  |
PEO Total Compensation Amount | $ 992,630 | $ 1,552,268 | $ 681,843
PEO Actually Paid Compensation Amount | $ 992,630 | 1,552,268 | 681,843
Adjustment To PEO Compensation, Footnote [Text Block] | (2) The dollar amounts reported in column (c) represent the amount of “compensation actually paid” to Mr. Colony, as computed in accordance with Item 402(v) of Regulation S-K. Because Mr. Colony did not receive or hold any equity awards during the years reflected in the table and we do not maintain a pension in which Mr. Colony participates, no additions or deductions from Summary Compensation Table (SCT) total compensation for our PEO are needed to determine the amount of “compensation actually paid” in accordance with Item 402(v) of Regulation S-K. |  |
Non-PEO NEO Average Total Compensation Amount | $ 978,306 | 1,134,598 | 860,550
Non-PEO NEO Average Compensation Actually Paid Amount | $ 449,918 | 1,324,876 | 873,033
Adjustment to Non-PEO NEO Compensation Footnote [Text Block] | (4) The dollar amounts reported in column (e) represent the average amount of “compensation actually paid” (CAP) to the NEOs as a group (excluding Mr. Colony), as computed in accordance with Item 402(v) of Regulation S-K. The dollar amounts do not reflect the average amount of compensation earned by or paid to the NEOs as a group (excluding Mr. Colony) during the applicable year. In accordance with the requirements of Item 402(v) of Regulation S-K, the following adjustments were made to the average compensation for the NEOs as a group (excluding Mr. Colony) for each year to determine the compensation actually paid:
Average Non-PEO NEOs SCT Total to CAP Reconciliation: |  |  |  |  |  |  |
Year | Salary |  | Bonus and Non-Equity Incentive Compensation |  | Other Compensation |  | SCT Total |  | Reported Value of Equity Awards |  | Equity Award Adjustments |  | CAP |
|  |  |  |  | (i) |  |  |  | (ii) |  | (iii) |  |  |
2022 | $ | 355,306 |  | $ | 149,711 |  | $ | 8,317 |  | $ | 978,306 |  | $ | (464,972 | ) | $ | (63,417 | ) | $ | 449,918 |
2021 | $ | 290,528 |  | $ | 376,641 |  | $ | 104,942 |  | $ | 1,134,598 |  | $ | (362,487 | ) | $ | 552,765 |  | $ | 1,324,876 |
2020 | $ | 369,916 |  | $ | 141,109 |  | $ | 12,038 |  | $ | 860,550 |  | $ | (337,488 | ) | $ | 349,971 |  | $ | 873,033 |
(i) Reflects "all other compensation" reported in the SCT for each year shown. (ii) Represents the grant date fair value of equity-based awards granted each year as reported in the “Stock Awards” column in the Summary Compensation Table for the applicable year. Because we do not maintain a pension in which any NEO participates, no adjustments from the SCT total related to pension value are needed to calculate “compensation actually paid” in accordance with Item 402(v) of Regulation S-K. (iii) The equity award adjustments for each applicable year include the addition (or subtraction, as applicable) of the following: (i) the year-end fair value of any equity awards granted in the applicable year that are outstanding and unvested as of the end of the year; (ii) the amount of change as of the end of the applicable year (from the end of the prior fiscal year) in fair value of any awards granted in prior years that are outstanding and unvested as of the end of the applicable year; (iii) for awards that are granted and vest in same applicable year, the fair value as of the vesting date; (iv) for awards granted in prior years that vest in the applicable year, the amount equal to the change as of the vesting date (from the end of the prior fiscal year) in fair value; (v) for awards granted in prior years that are determined to fail to meet the applicable vesting conditions during the applicable year, a deduction for the amount equal to the fair value at the end of the prior fiscal year; and (vi) the dollar value of any dividends or other earnings paid on awards in the applicable year prior to the vesting date that are not otherwise reflected in the fair value of such award or included in any other component of total compensation for the applicable year. The valuation assumptions used to calculate fair values did not materially differ from those disclosed at the time of grant. The amounts deducted or added in calculating the equity award adjustments are as follows:
Average Non-PEO NEOs Equity Award Adjustments: |  |  |  |  |  |
| 2020 Average |  | 2021 Average |  | 2022 Average |
Plus: Fair Value for Stock Awards Granted in the Covered Year that are Unvested at End of Year | $ | 392,907 |  | $ | 450,772 |  | $ | 257,486 |
Change in Fair Value of Outstanding Unvested Stock Awards from Prior Year | $ | 2,451 |  | $ | 121,557 |  | $ | (152,787 | )
Change in Fair Value of Stock Awards from Prior Years that Vested in the Covered Year | $ | (45,387 | ) | $ | 27,727 |  | $ | (71,058 | )
Less: Fair Value of Stock Awards Forfeited during the Covered Year | - |  | $ | (47,291 | ) | $ | (97,057 | )
Total Adjustment | $ | 349,971 |  | $ | 552,765 |  | $ | (63,417 | )
Compensation Actually Paid vs. Total Shareholder Return [Text Block] | As shown in the chart below, the PEO and other NEOs’ CAP amounts are aligned with the Company’s TSR. This is due primarily to the Company’s use of equity incentives, which are tied directly to stock price in addition to the company’s financial performance. |  |
Compensation Actually Paid vs. Net Income [Text Block] | As shown in the chart below, while the variations in the Company’s net income and the PEO and other NEOs’ CAP have been directionally consistent each year, the decrease in the CAP amounts was proportionately greater than the decrease in net income in 2022. This is due in large part to the significant emphasis the Company places on equity incentives, which are sensitive to changes in stock price. In addition, the Company does not use net income to determine compensation levels or incentive plan payouts. |  |
Compensation Actually Paid vs. Company Selected Measure [Text Block] | The chart below compares the PEO and other NEOs’ CAP to our CSM, year-over-year CV bookings growth, which indicates there is a very strong relationship between this CSM and CAP. The Company's amount of CV bookings is one of the two metrics used in determining the level of payout under our Executive Cash Incentive Plan, with the target level of CV bookings being derived from the targeted year-over-year CV bookings growth percentage reflected in the annual operating plan approved by the Board of Directors. In addition, we believe there is a strong correlation between our CV bookings growth and our stock price, which in turn leads to fluctuations in the CAP to our non-PEO NEOs, who receive equity incentives as part of their compensation. |  |
Total Shareholder Return Vs Peer Group [Text Block] | As shown in the chart below, the Company's 3-year cumulative TSR is less than the companies included in our industry index, the S&P Small Cap 600 Information Technology Index. For more information regarding the Company’s performance and the companies that the Compensation Committee considers when determining compensation, refer to “Executive Compensation – Compensation Discussion and Analysis.” |  |
Tabular List [Table Text Block] | As described in greater detail in “Executive Compensation – Compensation Discussion and Analysis,” our executive compensation program reflects a variable pay-for-performance philosophy. The most important financial performance measures we used to link executive compensation actually paid to our NEOs, for the most recently completed fiscal year, to our performance are as follows: • CV Bookings • Modified Operating Income • Year-Over-Year CV Bookings Growth |  |
Total Shareholder Return Amount | $ 86 | 141 | 100
Peer Group Total Shareholder Return Amount | 126 | 162 | 128
Net Income (Loss) | $ 21,800,000 | $ 24,800,000 | $ 10,000,000.0
Company Selected Measure Amount | 0.008 | 0.160 | (0.035)
PEO Name | Mr. Colony |  |
Measure [Axis]: 1 |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Measure Name | CV Bookings |  |
Measure [Axis]: 2 |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Measure Name | Modified Operating Income |  |
Measure [Axis]: 3 |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Measure Name | Year-Over-Year CV Bookings Growth |  |
Plus: Fair Value for Stock Awards Granted in the Covered Year that are Unvested at End of Year [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | $ 257,486 | $ 450,772 | $ 392,907
Change in Fair Value of Outstanding Unvested Stock Awards from Prior Year [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | (152,787) | 121,557 | 2,451
Change in Fair Value of Stock Awards from Prior Years that Vested in the Covered Year [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | (71,058) | 27,727 | (45,387)
Less: Fair Value of Stock Awards Forfeited during the Covered Year [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | (97,057) | (47,291) | 0
Salary [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | 355,306 | 290,528 | 369,916
Bonus and Non-Equity Incentive Compensation [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | 149,711 | 376,641 | 141,109
Other Compensation [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | 8,317 | 104,942 | 12,038
Reported Value of Equity Awards [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | (464,972) | (362,487) | (337,488)
Equity Award Adjustments [Member] |  |  |
Pay vs Performance Disclosure [Table] |  |  |
Adjustment to Compensation Amount | $ (63,417) | $ 552,765 | $ 349,971

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 3 + Details
Name: | ecd_AdjToCompAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 3 + Details
Name: | ecd_AdjToNonPeoNeoCompFnTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 3 + Details
Name: | ecd_AdjToPeoCompFnTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph vi + Details
Name: | ecd_CoSelectedMeasureAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:decimalItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph vi + Details
Name: | ecd_CoSelectedMeasureName
Namespace Prefix: | ecd_
Data Type: | xbrli:normalizedStringItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 5 -Subparagraph iii + Details
Name: | ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 5 -Subparagraph ii + Details
Name: | ecd_CompActuallyPaidVsNetIncomeTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 5 -Subparagraph i + Details
Name: | ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph vi + Details
Name: | ecd_MeasureName
Namespace Prefix: | ecd_
Data Type: | xbrli:normalizedStringItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 3 + Details
Name: | ecd_NamedExecutiveOfficersFnTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph iii + Details
Name: | ecd_NonPeoNeoAvgCompActuallyPaidAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph ii + Details
Name: | ecd_NonPeoNeoAvgTotalCompAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph iv + Details
Name: | ecd_PeerGroupTotalShareholderRtnAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph iii + Details
Name: | ecd_PeoActuallyPaidCompAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 3 + Details
Name: | ecd_PeoName
Namespace Prefix: | ecd_
Data Type: | xbrli:normalizedStringItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph ii + Details
Name: | ecd_PeoTotalCompAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 1 + Details
Name: | ecd_PvpTable
Namespace Prefix: | ecd_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 1 + Details
Name: | ecd_PvpTableTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 6 + Details
Name: | ecd_TabularListTableTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 2 -Subparagraph iv + Details
Name: | ecd_TotalShareholderRtnAmt
Namespace Prefix: | ecd_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | duration

X
- References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher SEC -Name Regulation S-K -Number 229 -Section 402 -Subsection v -Paragraph 5 -Subparagraph iv + Details
Name: | ecd_TotalShareholderRtnVsPeerGroupTextBlock
Namespace Prefix: | ecd_
Data Type: | dtr-types:textBlockItemType
Balance Type: | na
Period Type: | duration

X
- Definition The portion of profit or loss for the period, net of income taxes, which is attributable to the parent. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 942 -SubTopic 220 -Section S99 -Paragraph 1 -Subparagraph (SX 210.9-04(22)) -URI https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 32 -Subparagraph (f) -URI https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 4 -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794 Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 944 -SubTopic 220 -Section S99 -Paragraph 1 -Subparagraph (SX 210.7-04(18)) -URI https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263 Reference 5: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 815 -SubTopic 40 -Section 65 -Paragraph 1 -Subparagraph (f) -URI https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011 Reference 6: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 50 -Paragraph 6 -URI https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067 Reference 7: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(5)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756 Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03(20)) -URI https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227 Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 28 -URI https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585 Reference 10: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 1 -Subparagraph (b)(2) -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794 Reference 11: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(4)(iv)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756 Reference 12: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(4)(iii)(A)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756 Reference 13: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(4)(i)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756 Reference 14: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(4)(i)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756 Reference 15: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 9 -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794 Reference 16: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(4)(iv)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756 Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(4)(ii)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756 Reference 18: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 825 -SubTopic 10 -Section 50 -Paragraph 28 -Subparagraph (f) -URI https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612 Reference 19: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 3 -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794 Reference 20: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 235 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.4-08(g)(1)(ii)) -URI https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690 Reference 21: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 260 -SubTopic 10 -Section 45 -Paragraph 60B -Subparagraph (a) -URI https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256 Reference 22: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 323 -SubTopic 10 -Section 50 -Paragraph 3 -Subparagraph (c) -URI https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571 Reference 23: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 8 -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794 Reference 24: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 1A -Subparagraph (a) -URI https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580 Reference 25: http://www.xbrl.org/2003/role/exampleRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 31 -URI https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599 Reference 26: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 11 -Subparagraph (b) -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794 Reference 27: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 250 -SubTopic 10 -Section 50 -Paragraph 11 -Subparagraph (a) -URI https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794 Reference 28: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 205 -SubTopic 20 -Section 50 -Paragraph 7 -URI https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760 Reference 29: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section 45 -Paragraph 1B -Subparagraph (a) -URI https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580 Reference 30: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 22 -URI https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599 Reference 31: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1A -Subparagraph (SX 210.13-01(a)(5)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756 Reference 32: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(4)(iii)(B)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756 Reference 33: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 470 -SubTopic 10 -Section S99 -Paragraph 1B -Subparagraph (SX 210.13-02(a)(4)(iii)(A)) -URI https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756 Reference 34: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 30 -Subparagraph (b) -URI https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599 Reference 35: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 32 -Subparagraph (c) -URI https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599 + Details
Name: | us-gaap_NetIncomeLoss
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Details
Name: | ecd_MeasureAxis=1
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_MeasureAxis=2
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_MeasureAxis=3
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=forr_PlusFairValueForStockAwardsGrantedInTheCoveredYearThatAreUnvestedAtEndOfYearMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=forr_ChangeInFairValueOfOutstandingUnvestedStockAwardsFromPriorYearMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=forr_ChangeInFairValueOfStockAwardsFromPriorYearsThatVestedInTheCoveredYearMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=forr_LessFairValueOfStockAwardsForfeitedDuringTheCoveredYearMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=forr_SalaryMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=forr_BonusAndNonEquityIncentiveCompensationMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=forr_OtherCompensationMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=forr_ReportedValueOfEquityAwardsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | ecd_AdjToCompAxis=forr_EquityAwardAdjustmentsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |