v2.4.1.9

Employee Stock and Benefit Plans (Options Outstanding and Vested) (Details) (USD $) In Millions, except Share data, unless otherwise specified | 12 Months Ended
--- | ---
Dec. 31, 2014 | Dec. 31, 2013 | Dec. 31, 2012
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |  |  |
Number of shares, outstanding | 7,605,407 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions |  |
Weighted average exercise price per share, outstanding (in dollar per share) | $ 12.93 us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1 |  |
Weighted average remaining contractual life, outstanding | 6 years 6 months |  |
Number of shares, vested | 4,379,624 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfVestedOptions |  |
Weighted average exercise price per share, vested (in dollar per share) | $ 5.58 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeVestedOptionsWeightedAverageExercisePrice |  |
Stock Options |  |  |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |  |  |
Weighted average grant date fair value (in dollars per share) | $ 12.07 us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockOptionMember | $ 7.62 us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockOptionMember | $ 4.27 us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockOptionMember
Grant date fair value | $ 33.1 qlys_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantedInPeriodTotalFairValue / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockOptionMember | $ 15.2 qlys_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantedInPeriodTotalFairValue / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockOptionMember | $ 6.3 qlys_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantedInPeriodTotalFairValue / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockOptionMember
Intrinsic value of options exercised | $ 25.7 us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockOptionMember | $ 11.1 us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockOptionMember | $ 4.0 us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue / us-gaap_AwardTypeAxis = us-gaap_EmployeeStockOptionMember
$1.00 - $1.50 |  |  |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |  |  |
Exercise price range, lower limit (in dollar per share) | $ 1.00 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeOneMember |  |
Exercise price range, upper limit (in dollar per share) | $ 1.50 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeOneMember |  |
Number of shares, outstanding | 238,559 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeOneMember |  |
Weighted average exercise price per share, outstanding (in dollar per share) | $ 1.40 us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1 / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeOneMember |  |
Weighted average remaining contractual life, outstanding | 1 year 6 months 7 days |  |
Number of shares, vested | 238,559 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfVestedOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeOneMember |  |
Weighted average exercise price per share, vested (in dollar per share) | $ 1.40 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeVestedOptionsWeightedAverageExercisePrice / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeOneMember |  |
$1.90 - $1.90 |  |  |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |  |  |
Exercise price range, lower limit (in dollar per share) | $ 1.90 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeTwoMember |  |
Exercise price range, upper limit (in dollar per share) | $ 1.90 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeTwoMember |  |
Number of shares, outstanding | 941,482 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeTwoMember |  |
Weighted average exercise price per share, outstanding (in dollar per share) | $ 1.90 us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1 / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeTwoMember |  |
Weighted average remaining contractual life, outstanding | 2 years 1 month 7 days |  |
Number of shares, vested | 941,482 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfVestedOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeTwoMember |  |
Weighted average exercise price per share, vested (in dollar per share) | $ 1.90 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeVestedOptionsWeightedAverageExercisePrice / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeTwoMember |  |
$2.10 - $2.80 |  |  |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |  |  |
Exercise price range, lower limit (in dollar per share) | $ 2.10 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeThreeMember |  |
Exercise price range, upper limit (in dollar per share) | $ 2.80 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeThreeMember |  |
Number of shares, outstanding | 461,758 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeThreeMember |  |
Weighted average exercise price per share, outstanding (in dollar per share) | $ 2.62 us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1 / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeThreeMember |  |
Weighted average remaining contractual life, outstanding | 3 years 10 months 7 days |  |
Number of shares, vested | 461,758 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfVestedOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeThreeMember |  |
Weighted average exercise price per share, vested (in dollar per share) | $ 2.62 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeVestedOptionsWeightedAverageExercisePrice / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeThreeMember |  |
$3.80 - $3.80 |  |  |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |  |  |
Exercise price range, lower limit (in dollar per share) | $ 3.80 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeFourMember |  |
Exercise price range, upper limit (in dollar per share) | $ 3.80 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeFourMember |  |
Number of shares, outstanding | 1,148,568 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeFourMember |  |
Weighted average exercise price per share, outstanding (in dollar per share) | $ 3.80 us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1 / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeFourMember |  |
Weighted average remaining contractual life, outstanding | 4 years 9 months 7 days |  |
Number of shares, vested | 1,126,625 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfVestedOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeFourMember |  |
Weighted average exercise price per share, vested (in dollar per share) | $ 3.80 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeVestedOptionsWeightedAverageExercisePrice / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeFourMember |  |
$4.10 - $8.40 |  |  |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |  |  |
Exercise price range, lower limit (in dollar per share) | $ 4.10 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeFiveMember |  |
Exercise price range, upper limit (in dollar per share) | $ 8.40 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeFiveMember |  |
Number of shares, outstanding | 924,121 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeFiveMember |  |
Weighted average exercise price per share, outstanding (in dollar per share) | $ 5.55 us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1 / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeFiveMember |  |
Weighted average remaining contractual life, outstanding | 6 years 0 months 7 days |  |
Number of shares, vested | 826,292 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfVestedOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeFiveMember |  |
Weighted average exercise price per share, vested (in dollar per share) | $ 5.35 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeVestedOptionsWeightedAverageExercisePrice / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeFiveMember |  |
$8.90 - $12.68 |  |  |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |  |  |
Exercise price range, lower limit (in dollar per share) | $ 8.90 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeSixMember |  |
Exercise price range, upper limit (in dollar per share) | $ 12.68 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeSixMember |  |
Number of shares, outstanding | 846,930 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeSixMember |  |
Weighted average exercise price per share, outstanding (in dollar per share) | $ 11.20 us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1 / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeSixMember |  |
Weighted average remaining contractual life, outstanding | 7 years 10 months 7 days |  |
Number of shares, vested | 392,645 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfVestedOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeSixMember |  |
Weighted average exercise price per share, vested (in dollar per share) | $ 10.93 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeVestedOptionsWeightedAverageExercisePrice / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeSixMember |  |
$13.50 - $20.80 |  |  |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |  |  |
Exercise price range, lower limit (in dollar per share) | $ 13.50 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeSevenMember |  |
Exercise price range, upper limit (in dollar per share) | $ 20.80 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeSevenMember |  |
Number of shares, outstanding | 962,889 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeSevenMember |  |
Weighted average exercise price per share, outstanding (in dollar per share) | $ 18.50 us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1 / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeSevenMember |  |
Weighted average remaining contractual life, outstanding | 8 years 6 months 7 days |  |
Number of shares, vested | 250,599 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfVestedOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeSevenMember |  |
Weighted average exercise price per share, vested (in dollar per share) | $ 17.03 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeVestedOptionsWeightedAverageExercisePrice / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeSevenMember |  |
$22.31 - $23.51 |  |  |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |  |  |
Exercise price range, lower limit (in dollar per share) | $ 22.31 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeEightMember |  |
Exercise price range, upper limit (in dollar per share) | $ 23.51 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeEightMember |  |
Number of shares, outstanding | 383,050 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeEightMember |  |
Weighted average exercise price per share, outstanding (in dollar per share) | $ 23.28 us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1 / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeEightMember |  |
Weighted average remaining contractual life, outstanding | 9 years 7 months 7 days |  |
Number of shares, vested | 45,009 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfVestedOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeEightMember |  |
Weighted average exercise price per share, vested (in dollar per share) | $ 22.55 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeVestedOptionsWeightedAverageExercisePrice / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeEightMember |  |
$26.86 - $26.86 |  |  |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |  |  |
Exercise price range, lower limit (in dollar per share) | $ 26.86 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeNineMember |  |
Exercise price range, upper limit (in dollar per share) | $ 26.86 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeNineMember |  |
Number of shares, outstanding | 701,350 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeNineMember |  |
Weighted average exercise price per share, outstanding (in dollar per share) | $ 26.86 us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1 / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeNineMember |  |
Weighted average remaining contractual life, outstanding | 9 years 0 months 7 days |  |
Number of shares, vested | 29,728 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfVestedOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeNineMember |  |
Weighted average exercise price per share, vested (in dollar per share) | $ 26.86 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeVestedOptionsWeightedAverageExercisePrice / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeNineMember |  |
$30.58 - $30.58 |  |  |
Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range [Line Items] |  |  |
Exercise price range, lower limit (in dollar per share) | $ 30.58 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeTenMember |  |
Exercise price range, upper limit (in dollar per share) | $ 30.58 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeTenMember |  |
Number of shares, outstanding | 996,700 us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeTenMember |  |
Weighted average exercise price per share, outstanding (in dollar per share) | $ 30.58 us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1 / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeTenMember |  |
Weighted average remaining contractual life, outstanding | 9 years 4 months 7 days |  |
Number of shares, vested | 66,927 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfVestedOptions / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeTenMember |  |
Weighted average exercise price per share, vested (in dollar per share) | $ 30.58 qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeVestedOptionsWeightedAverageExercisePrice / us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis = qlys_ExercisePriceRangeTenMember |  |

X
- Definition Share-based Compensation Arrangement by Share-based Payment Award, Options, Granted in Period, Total Fair Value + References No definition available. + Details
Name: | qlys_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantedInPeriodTotalFairValue
Namespace Prefix: | qlys_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Number of Vested Options + References No definition available. + Details
Name: | qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfVestedOptions
Namespace Prefix: | qlys_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition Share-based Compensation, Shares Authorized under Stock Option Plans, Exercise Price Range, Vested Options, Weighted Average Exercise Price + References No definition available. + Details
Name: | qlys_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeVestedOptionsWeightedAverageExercisePrice
Namespace Prefix: | qlys_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | instant

X
- Definition Amount of accumulated difference between fair value of underlying shares on dates of exercise and exercise price on options exercised (or share units converted) into shares. + 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 (d)(2) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology. + 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 (d)(1) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition The floor of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range. + 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 (g) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | duration

X
- Definition The number of shares reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices. + 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 (c)(1)(i)-(ii) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
Namespace Prefix: | us-gaap_
Data Type: | xbrli:sharesItemType
Balance Type: | na
Period Type: | instant

X
- Definition The weighted average price as of the balance sheet date at which grantees could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices. + 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 (c)(1)(i)-(ii) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
Balance Type: | na
Period Type: | instant

X
- Definition Weighted average remaining contractual term of outstanding stock options, 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 (e)(1) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageRemainingContractualTerm2
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition The ceiling of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range. + 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 (g) -URI http://asc.fasb.org/extlink&oid=6415400&loc=d3e5070-113901 + Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
Namespace Prefix: | us-gaap_
Data Type: | num:perShareItemType
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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=qlys_ExercisePriceRangeEightMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=qlys_ExercisePriceRangeFiveMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=qlys_ExercisePriceRangeFourMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=qlys_ExercisePriceRangeNineMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=qlys_ExercisePriceRangeOneMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=qlys_ExercisePriceRangeSevenMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=qlys_ExercisePriceRangeSixMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=qlys_ExercisePriceRangeTenMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=qlys_ExercisePriceRangeThreeMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeAxis=qlys_ExercisePriceRangeTwoMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |