|
Stockholders' Equity , Allocation of Stock-Based Compensation Expense (Details) (USD $) In Thousands, unless otherwise specified
|
3 Months Ended |
|
Mar. 31, 2015
|
Mar. 31, 2014
|
| Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |
|
|
| Total stock-based compensation expense |
$ 18,922us-gaap_AllocatedShareBasedCompensationExpense |
$ 12,930us-gaap_AllocatedShareBasedCompensationExpense |
| Income tax benefit from employee stock option plans |
3,377us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitRealizedFromExerciseOfStockOptions |
3,349us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitRealizedFromExerciseOfStockOptions |
| Cost of product revenue [Member] |
|
|
| Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |
|
|
| Total stock-based compensation expense |
140us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_IncomeStatementLocationAxis = ftnt_CostOfGoodsSoldMember |
113us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_IncomeStatementLocationAxis = ftnt_CostOfGoodsSoldMember |
| Cost of services revenue [Member] |
|
|
| Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |
|
|
| Total stock-based compensation expense |
1,632us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_IncomeStatementLocationAxis = ftnt_CostOfServicesMember |
1,329us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_IncomeStatementLocationAxis = ftnt_CostOfServicesMember |
| Research and development [Member] |
|
|
| Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |
|
|
| Total stock-based compensation expense |
5,157us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_IncomeStatementLocationAxis = us-gaap_ResearchAndDevelopmentExpenseMember |
3,882us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_IncomeStatementLocationAxis = us-gaap_ResearchAndDevelopmentExpenseMember |
| Sales and marketing [Member] |
|
|
| Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |
|
|
| Total stock-based compensation expense |
9,307us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_IncomeStatementLocationAxis = us-gaap_SellingAndMarketingExpenseMember |
5,746us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_IncomeStatementLocationAxis = us-gaap_SellingAndMarketingExpenseMember |
| General and administrative [Member] |
|
|
| Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |
|
|
| Total stock-based compensation expense |
2,686us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_IncomeStatementLocationAxis = us-gaap_GeneralAndAdministrativeExpenseMember |
1,860us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_IncomeStatementLocationAxis = us-gaap_GeneralAndAdministrativeExpenseMember |
| Stock options [Member] |
|
|
| Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |
|
|
| Total stock-based compensation expense |
3,455us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockOptionMember |
4,692us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockOptionMember |
| RSUs (including PSUs) [Member] |
|
|
| Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |
|
|
| Total stock-based compensation expense |
14,292us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_AwardTypeAxis = us-gaap_RestrictedStockUnitsRSUMember |
7,363us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_AwardTypeAxis = us-gaap_RestrictedStockUnitsRSUMember |
| ESPP [Member] |
|
|
| Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] |
|
|
| Total stock-based compensation expense |
$ 1,175us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockMember |
$ 875us-gaap_AllocatedShareBasedCompensationExpense / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockMember |