v3.7.0.1

STOCK-BASED COMPENSATION - Stock-based Compensation Expense (Details) - USD ($) $ in Thousands | 3 Months Ended | 6 Months Ended
--- | --- | ---
Jun. 30, 2017 | Jun. 30, 2016 | Jun. 30, 2017 | Jun. 30, 2016
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |  |
Total stock-based compensation | $ 4,444 | $ 5,454 | $ 7,997 | $ 10,350
Employee Stock Option |  |  |  |
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |  |
Total stock-based compensation | 820 | 1,185 | 1,703 | 2,331
Unrecognized stock-based compensation expense | 3,900 |  | $ 3,900 |
Period of recognition of unrecognized stock-based compensation expense |  |  | 1 year 9 months 26 days |
Restricted Stock Units (RSUs) |  |  |  |
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |  |
Total stock-based compensation | 3,193 | 3,544 | $ 5,463 | 6,691
Unrecognized stock-based compensation expense | 26,900 |  | $ 26,900 |
Period of recognition of unrecognized stock-based compensation expense |  |  | 2 years 2 months 27 days |
ESPP |  |  |  |
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |  |
Total stock-based compensation | 431 | 725 | $ 831 | 1,328
Unrecognized stock-based compensation expense | 1,000 |  | $ 1,000 |
Period of recognition of unrecognized stock-based compensation expense |  |  | 5 months 1 day |
Cost of revenue |  |  |  |
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |  |
Total stock-based compensation | 276 | 321 | $ 547 | 593
Research and development |  |  |  |
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |  |
Total stock-based compensation | 1,065 | 1,366 | 1,753 | 2,711
Sales and marketing |  |  |  |
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |  |
Total stock-based compensation | 1,501 | 2,063 | 2,795 | 3,831
General and administrative |  |  |  |
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |  |  |  |
Total stock-based compensation | $ 1,602 | $ 1,704 | $ 2,902 | $ 3,215

X
- Definition Represents the expense recognized during the period arising from equity-based compensation arrangements (for example, shares of stock, unit, stock options or other equity instruments) with employees, directors and certain consultants qualifying for treatment as employees. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SAB Topic 14.F) -URI http://asc.fasb.org/extlink&oid=27013229&loc=d3e301413-122809 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 1 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5047-113901 Reference 3: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (h)(1)(i) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_AllocatedShareBasedCompensationExpense
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Unrecognized cost of unvested share-based compensation awards. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (i) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | instant

X
- Definition Weighted average period over which unrecognized compensation is expected to be recognized for equity-based compensation plans, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 718 -SubTopic 10 -Section 50 -Paragraph 2 -Subparagraph (i) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_AwardTypeAxis=us-gaap_EmployeeStockOptionMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_AwardTypeAxis=us-gaap_RestrictedStockUnitsRSUMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_AwardTypeAxis=us-gaap_EmployeeStockMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |