| | | | | | | | | | | | | | | | | | | | | |
<?xml version="1.0" encoding="windows-1252"?> |
<FilingSummary> |
| <Version> 3.19.3.a.u2 </Version> |
| <ProcessingTime/> |
| <ReportFormat> html </ReportFormat> |
| <ContextCount> 180 </ContextCount> |
| <ElementCount> 378 </ElementCount> |
| <EntityCount> 1 </EntityCount> |
| <FootnotesReported> false </FootnotesReported> |
| <SegmentCount> 44 </SegmentCount> |
| <ScenarioCount> 0 </ScenarioCount> |
| <TuplesReported> false </TuplesReported> |
| <UnitCount> 5 </UnitCount> |
| <MyReports> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R1.htm </HtmlFileName> |
| | | <LongName> 0001001 - Document - Cover Page </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/CoverPage </Role> |
| | | <ShortName> Cover Page </ShortName> |
| | | <MenuCategory> Cover </MenuCategory> |
| | | <Position> 1 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R2.htm </HtmlFileName> |
| | | <LongName> 1001002 - Statement - Consolidated Statements of Financial Position </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/ConsolidatedStatementsofFinancialPosition </Role> |
| | | <ShortName> Consolidated Statements of Financial Position </ShortName> |
| | | <MenuCategory> Statements </MenuCategory> |
| | | <Position> 2 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R3.htm </HtmlFileName> |
| | | <LongName> 1002003 - Statement - Consolidated Statements of Financial Position (Parenthetical) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/ConsolidatedStatementsofFinancialPositionParenthetical </Role> |
| | | <ShortName> Consolidated Statements of Financial Position (Parenthetical) </ShortName> |
| | | <MenuCategory> Statements </MenuCategory> |
| | | <Position> 3 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R4.htm </HtmlFileName> |
| | | <LongName> 1003004 - Statement - Consolidated Statements of Operations </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/ConsolidatedStatementsofOperations </Role> |
| | | <ShortName> Consolidated Statements of Operations </ShortName> |
| | | <MenuCategory> Statements </MenuCategory> |
| | | <Position> 4 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R5.htm </HtmlFileName> |
| | | <LongName> 1004005 - Statement - Consolidated Statements of Comprehensive Income (Loss) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/ConsolidatedStatementsofComprehensiveIncomeLoss </Role> |
| | | <ShortName> Consolidated Statements of Comprehensive Income (Loss) </ShortName> |
| | | <MenuCategory> Statements </MenuCategory> |
| | | <Position> 5 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R6.htm </HtmlFileName> |
| | | <LongName> 1005006 - Statement - Consolidated Statements of Stockholders' Equity </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/ConsolidatedStatementsofStockholdersEquity </Role> |
| | | <ShortName> Consolidated Statements of Stockholders' Equity </ShortName> |
| | | <MenuCategory> Statements </MenuCategory> |
| | | <Position> 6 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R7.htm </HtmlFileName> |
| | | <LongName> 1006007 - Statement - Consolidated Statements of Stockholders' Equity (Parenthetical) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/ConsolidatedStatementsofStockholdersEquityParenthetical </Role> |
| | | <ShortName> Consolidated Statements of Stockholders' Equity (Parenthetical) </ShortName> |
| | | <MenuCategory> Statements </MenuCategory> |
| | | <Position> 7 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R8.htm </HtmlFileName> |
| | | <LongName> 1007008 - Statement - Consolidated Statements of Cash Flows </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/ConsolidatedStatementsofCashFlows </Role> |
| | | <ShortName> Consolidated Statements of Cash Flows </ShortName> |
| | | <MenuCategory> Statements </MenuCategory> |
| | | <Position> 8 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R9.htm </HtmlFileName> |
| | | <LongName> 2101101 - Disclosure - Summary of Significant Accounting Policies </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/SummaryofSignificantAccountingPolicies </Role> |
| | | <ShortName> Summary of Significant Accounting Policies </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 9 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R10.htm </HtmlFileName> |
| | | <LongName> 2107102 - Disclosure - New Accounting Pronouncements </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/NewAccountingPronouncements </Role> |
| | | <ShortName> New Accounting Pronouncements </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 10 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R11.htm </HtmlFileName> |
| | | <LongName> 2108103 - Disclosure - Revenue Recognition </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/RevenueRecognition </Role> |
| | | <ShortName> Revenue Recognition </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 11 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R12.htm </HtmlFileName> |
| | | <LongName> 2113104 - Disclosure - Other Current Assets </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/OtherCurrentAssets </Role> |
| | | <ShortName> Other Current Assets </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 12 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R13.htm </HtmlFileName> |
| | | <LongName> 2116105 - Disclosure - Property and Equipment, Net </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/PropertyandEquipmentNet </Role> |
| | | <ShortName> Property and Equipment, Net </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 13 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R14.htm </HtmlFileName> |
| | | <LongName> 2119106 - Disclosure - Leases </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/Leases </Role> |
| | | <ShortName> Leases </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 14 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R15.htm </HtmlFileName> |
| | | <LongName> 2124107 - Disclosure - Goodwill </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/Goodwill </Role> |
| | | <ShortName> Goodwill </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 15 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R16.htm </HtmlFileName> |
| | | <LongName> 2127108 - Disclosure - Accrued Payroll and Benefit Costs </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/AccruedPayrollandBenefitCosts </Role> |
| | | <ShortName> Accrued Payroll and Benefit Costs </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 16 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R17.htm </HtmlFileName> |
| | | <LongName> 2130109 - Disclosure - Notes Payable and Other Indebtedness </LongName> |
| | | <ReportType> Notes </ReportType> |
| | | <Role> http://roberthalf.com/role/NotesPayableandOtherIndebtedness </Role> |
| | | <ShortName> Notes Payable and Other Indebtedness </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 17 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R18.htm </HtmlFileName> |
| | | <LongName> 2134110 - Disclosure - Income Taxes </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/IncomeTaxes </Role> |
| | | <ShortName> Income Taxes </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 18 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R19.htm </HtmlFileName> |
| | | <LongName> 2143111 - Disclosure - Commitments and Contingencies </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/CommitmentsandContingencies </Role> |
| | | <ShortName> Commitments and Contingencies </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 19 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R20.htm </HtmlFileName> |
| | | <LongName> 2145112 - Disclosure - Stockholders' Equity </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/StockholdersEquity </Role> |
| | | <ShortName> Stockholders' Equity </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 20 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R21.htm </HtmlFileName> |
| | | <LongName> 2151113 - Disclosure - Stock Plans </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/StockPlans </Role> |
| | | <ShortName> Stock Plans </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 21 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R22.htm </HtmlFileName> |
| | | <LongName> 2157114 - Disclosure - Net Income Per Share </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/NetIncomePerShare </Role> |
| | | <ShortName> Net Income Per Share </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 22 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R23.htm </HtmlFileName> |
| | | <LongName> 2160115 - Disclosure - Business Segments </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/BusinessSegments </Role> |
| | | <ShortName> Business Segments </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 23 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R24.htm </HtmlFileName> |
| | | <LongName> 2165116 - Disclosure - Quarterly Financial Data (Unaudited) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/QuarterlyFinancialDataUnaudited </Role> |
| | | <ShortName> Quarterly Financial Data (Unaudited) </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 24 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R25.htm </HtmlFileName> |
| | | <LongName> 2168117 - Disclosure - Subsequent Events </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/SubsequentEvents </Role> |
| | | <ShortName> Subsequent Events </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 25 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R26.htm </HtmlFileName> |
| | | <LongName> 2171118 - Disclosure - Schedule II - Valuation and Qualifying Accounts </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/ScheduleIIValuationandQualifyingAccounts </Role> |
| | | <ShortName> Schedule II - Valuation and Qualifying Accounts </ShortName> |
| | | <MenuCategory> Notes </MenuCategory> |
| | | <Position> 26 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R27.htm </HtmlFileName> |
| | | <LongName> 2202201 - Disclosure - Summary of Significant Accounting Policies (Policies) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/SummaryofSignificantAccountingPoliciesPolicies </Role> |
| | | <ShortName> Summary of Significant Accounting Policies (Policies) </ShortName> |
| | | <MenuCategory> Policies </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/SummaryofSignificantAccountingPolicies </ParentRole> |
| | | <Position> 27 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R28.htm </HtmlFileName> |
| | | <LongName> 2303301 - Disclosure - Summary of Significant Accounting Policies (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/SummaryofSignificantAccountingPoliciesTables </Role> |
| | | <ShortName> Summary of Significant Accounting Policies (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/SummaryofSignificantAccountingPolicies </ParentRole> |
| | | <Position> 28 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R29.htm </HtmlFileName> |
| | | <LongName> 2309302 - Disclosure - Revenue Recognition (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/RevenueRecognitionTables </Role> |
| | | <ShortName> Revenue Recognition (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/RevenueRecognition </ParentRole> |
| | | <Position> 29 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R30.htm </HtmlFileName> |
| | | <LongName> 2314303 - Disclosure - Other Current Assets (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/OtherCurrentAssetsTables </Role> |
| | | <ShortName> Other Current Assets (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/OtherCurrentAssets </ParentRole> |
| | | <Position> 30 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R31.htm </HtmlFileName> |
| | | <LongName> 2317304 - Disclosure - Property and Equipment, Net (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/PropertyandEquipmentNetTables </Role> |
| | | <ShortName> Property and Equipment, Net (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/PropertyandEquipmentNet </ParentRole> |
| | | <Position> 31 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R32.htm </HtmlFileName> |
| | | <LongName> 2320305 - Disclosure - Leases (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/LeasesTables </Role> |
| | | <ShortName> Leases (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/Leases </ParentRole> |
| | | <Position> 32 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R33.htm </HtmlFileName> |
| | | <LongName> 2325306 - Disclosure - Goodwill (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/GoodwillTables </Role> |
| | | <ShortName> Goodwill (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/Goodwill </ParentRole> |
| | | <Position> 33 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R34.htm </HtmlFileName> |
| | | <LongName> 2328307 - Disclosure - Accrued Payroll and Benefit Costs (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/AccruedPayrollandBenefitCostsTables </Role> |
| | | <ShortName> Accrued Payroll and Benefit Costs (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/AccruedPayrollandBenefitCosts </ParentRole> |
| | | <Position> 34 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R35.htm </HtmlFileName> |
| | | <LongName> 2331308 - Disclosure - Notes Payable and Other Indebtedness (Tables) </LongName> |
| | | <ReportType> Notes </ReportType> |
| | | <Role> http://roberthalf.com/role/NotesPayableandOtherIndebtednessTables </Role> |
| | | <ShortName> Notes Payable and Other Indebtedness (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/NotesPayableandOtherIndebtedness </ParentRole> |
| | | <Position> 35 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R36.htm </HtmlFileName> |
| | | <LongName> 2335309 - Disclosure - Income Taxes (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/IncomeTaxesTables </Role> |
| | | <ShortName> Income Taxes (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/IncomeTaxes </ParentRole> |
| | | <Position> 36 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R37.htm </HtmlFileName> |
| | | <LongName> 2346310 - Disclosure - Stockholders' Equity (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/StockholdersEquityTables </Role> |
| | | <ShortName> Stockholders' Equity (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/StockholdersEquity </ParentRole> |
| | | <Position> 37 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R38.htm </HtmlFileName> |
| | | <LongName> 2352311 - Disclosure - Stock Plans (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/StockPlansTables </Role> |
| | | <ShortName> Stock Plans (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/StockPlans </ParentRole> |
| | | <Position> 38 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R39.htm </HtmlFileName> |
| | | <LongName> 2358312 - Disclosure - Net Income Per Share (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/NetIncomePerShareTables </Role> |
| | | <ShortName> Net Income Per Share (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/NetIncomePerShare </ParentRole> |
| | | <Position> 39 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R40.htm </HtmlFileName> |
| | | <LongName> 2361313 - Disclosure - Business Segments (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/BusinessSegmentsTables </Role> |
| | | <ShortName> Business Segments (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/BusinessSegments </ParentRole> |
| | | <Position> 40 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R41.htm </HtmlFileName> |
| | | <LongName> 2366314 - Disclosure - Quarterly Financial Data (Unaudited) (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/QuarterlyFinancialDataUnauditedTables </Role> |
| | | <ShortName> Quarterly Financial Data (Unaudited) (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/QuarterlyFinancialDataUnaudited </ParentRole> |
| | | <Position> 41 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R42.htm </HtmlFileName> |
| | | <LongName> 2369315 - Disclosure - Subsequent Events (Tables) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/SubsequentEventsTables </Role> |
| | | <ShortName> Subsequent Events (Tables) </ShortName> |
| | | <MenuCategory> Tables </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/SubsequentEvents </ParentRole> |
| | | <Position> 42 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R43.htm </HtmlFileName> |
| | | <LongName> 2404401 - Disclosure - Summary of Significant Accounting Policies - Additional Information (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/SummaryofSignificantAccountingPoliciesAdditionalInformationDetails </Role> |
| | | <ShortName> Summary of Significant Accounting Policies - Additional Information (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 43 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R44.htm </HtmlFileName> |
| | | <LongName> 2405402 - Disclosure - Summary of Significant Accounting Policies - Property Plant and Equipment (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/SummaryofSignificantAccountingPoliciesPropertyPlantandEquipmentDetails </Role> |
| | | <ShortName> Summary of Significant Accounting Policies - Property Plant and Equipment (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 44 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R45.htm </HtmlFileName> |
| | | <LongName> 2406403 - Disclosure - Summary of Significant Accounting Policies - Internal Use Software (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/SummaryofSignificantAccountingPoliciesInternalUseSoftwareDetails </Role> |
| | | <ShortName> Summary of Significant Accounting Policies - Internal Use Software (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 45 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R46.htm </HtmlFileName> |
| | | <LongName> 2410404 - Disclosure - Revenue Recognition - Schedule of Revenue Disaggregated by Line of Business (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/RevenueRecognitionScheduleofRevenueDisaggregatedbyLineofBusinessDetails </Role> |
| | | <ShortName> Revenue Recognition - Schedule of Revenue Disaggregated by Line of Business (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 46 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R47.htm </HtmlFileName> |
| | | <LongName> 2411405 - Disclosure - Revenue Recognition - Remaining Performance Obligation (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/RevenueRecognitionRemainingPerformanceObligationDetails </Role> |
| | | <ShortName> Revenue Recognition - Remaining Performance Obligation (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 47 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R48.htm </HtmlFileName> |
| | | <LongName> 2412406 - Disclosure - Revenue Recognition - Schedule of Contract Liability Activity (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/RevenueRecognitionScheduleofContractLiabilityActivityDetails </Role> |
| | | <ShortName> Revenue Recognition - Schedule of Contract Liability Activity (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 48 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R49.htm </HtmlFileName> |
| | | <LongName> 2415407 - Disclosure - Other Current Assets (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/OtherCurrentAssetsDetails </Role> |
| | | <ShortName> Other Current Assets (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/OtherCurrentAssetsTables </ParentRole> |
| | | <Position> 49 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R50.htm </HtmlFileName> |
| | | <LongName> 2418408 - Disclosure - Property and Equipment, Net (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/PropertyandEquipmentNetDetails </Role> |
| | | <ShortName> Property and Equipment, Net (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/PropertyandEquipmentNetTables </ParentRole> |
| | | <Position> 50 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R51.htm </HtmlFileName> |
| | | <LongName> 2421409 - Disclosure - Leases - Narrative (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/LeasesNarrativeDetails </Role> |
| | | <ShortName> Leases - Narrative (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 51 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R52.htm </HtmlFileName> |
| | | <LongName> 2422410 - Disclosure - Leases - Lease Cost and Other Information (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/LeasesLeaseCostandOtherInformationDetails </Role> |
| | | <ShortName> Leases - Lease Cost and Other Information (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 52 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R53.htm </HtmlFileName> |
| | | <LongName> 2423411 - Disclosure - Leases - Future Minimum Lease Payments (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/LeasesFutureMinimumLeasePaymentsDetails </Role> |
| | | <ShortName> Leases - Future Minimum Lease Payments (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 53 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R54.htm </HtmlFileName> |
| | | <LongName> 2426412 - Disclosure - Goodwill (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/GoodwillDetails </Role> |
| | | <ShortName> Goodwill (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/GoodwillTables </ParentRole> |
| | | <Position> 54 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R55.htm </HtmlFileName> |
| | | <LongName> 2429413 - Disclosure - Accrued Payroll and Benefit Costs (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/AccruedPayrollandBenefitCostsDetails </Role> |
| | | <ShortName> Accrued Payroll and Benefit Costs (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/AccruedPayrollandBenefitCostsTables </ParentRole> |
| | | <Position> 55 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R56.htm </HtmlFileName> |
| | | <LongName> 2432414 - Disclosure - Notes Payable and Other Indebtedness - Additional Information (Details) </LongName> |
| | | <ReportType> Notes </ReportType> |
| | | <Role> http://roberthalf.com/role/NotesPayableandOtherIndebtednessAdditionalInformationDetails </Role> |
| | | <ShortName> Notes Payable and Other Indebtedness - Additional Information (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 56 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R57.htm </HtmlFileName> |
| | | <LongName> 2433415 - Disclosure - Notes Payable and Other Indebtedness - Schedule of Maturities for Notes Payable and Other Indebtedness (Details) </LongName> |
| | | <ReportType> Notes </ReportType> |
| | | <Role> http://roberthalf.com/role/NotesPayableandOtherIndebtednessScheduleofMaturitiesforNotesPayableandOtherIndebtednessDetails </Role> |
| | | <ShortName> Notes Payable and Other Indebtedness - Schedule of Maturities for Notes Payable and Other Indebtedness (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 57 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R58.htm </HtmlFileName> |
| | | <LongName> 2436416 - Disclosure - Income Taxes - Provision for Income Taxes (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/IncomeTaxesProvisionforIncomeTaxesDetails </Role> |
| | | <ShortName> Income Taxes - Provision for Income Taxes (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 58 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R59.htm </HtmlFileName> |
| | | <LongName> 2437417 - Disclosure - Income Taxes - Income Before Provision for Income Taxes (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/IncomeTaxesIncomeBeforeProvisionforIncomeTaxesDetails </Role> |
| | | <ShortName> Income Taxes - Income Before Provision for Income Taxes (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 59 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R60.htm </HtmlFileName> |
| | | <LongName> 2438418 - Disclosure - Income Taxes - Difference of Income Taxes from Statutory Federal Income Tax Rates (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/IncomeTaxesDifferenceofIncomeTaxesfromStatutoryFederalIncomeTaxRatesDetails </Role> |
| | | <ShortName> Income Taxes - Difference of Income Taxes from Statutory Federal Income Tax Rates (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 60 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R61.htm </HtmlFileName> |
| | | <LongName> 2439419 - Disclosure - Income Taxes - Deferred Portion of Tax Provision (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/IncomeTaxesDeferredPortionofTaxProvisionDetails </Role> |
| | | <ShortName> Income Taxes - Deferred Portion of Tax Provision (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 61 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R62.htm </HtmlFileName> |
| | | <LongName> 2440420 - Disclosure - Income Taxes - Components of Deferred Income Tax Amounts (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/IncomeTaxesComponentsofDeferredIncomeTaxAmountsDetails </Role> |
| | | <ShortName> Income Taxes - Components of Deferred Income Tax Amounts (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 62 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R63.htm </HtmlFileName> |
| | | <LongName> 2441421 - Disclosure - Income Taxes - Additional Information (Detail) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/IncomeTaxesAdditionalInformationDetail </Role> |
| | | <ShortName> Income Taxes - Additional Information (Detail) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 63 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R64.htm </HtmlFileName> |
| | | <LongName> 2442422 - Disclosure - Income Taxes - Reconciliation of Total Amounts of Gross Unrecognized Tax Benefits (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/IncomeTaxesReconciliationofTotalAmountsofGrossUnrecognizedTaxBenefitsDetails </Role> |
| | | <ShortName> Income Taxes - Reconciliation of Total Amounts of Gross Unrecognized Tax Benefits (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 64 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R65.htm </HtmlFileName> |
| | | <LongName> 2444423 - Disclosure - Commitments and Contingencies - Additional Information (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/CommitmentsandContingenciesAdditionalInformationDetails </Role> |
| | | <ShortName> Commitments and Contingencies - Additional Information (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 65 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R66.htm </HtmlFileName> |
| | | <LongName> 2447424 - Disclosure - Stockholders' Equity - Additional Information (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/StockholdersEquityAdditionalInformationDetails </Role> |
| | | <ShortName> Stockholders' Equity - Additional Information (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 66 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R67.htm </HtmlFileName> |
| | | <LongName> 2448425 - Disclosure - Stockholders' Equity - Number of Cost of Common Stock Shares Repurchased (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/StockholdersEquityNumberofCostofCommonStockSharesRepurchasedDetails </Role> |
| | | <ShortName> Stockholders' Equity - Number of Cost of Common Stock Shares Repurchased (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 67 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R68.htm </HtmlFileName> |
| | | <LongName> 2449426 - Disclosure - Stockholders' Equity - Number and Cost of Employee Stock Plan Repurchases (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/StockholdersEquityNumberandCostofEmployeeStockPlanRepurchasesDetails </Role> |
| | | <ShortName> Stockholders' Equity - Number and Cost of Employee Stock Plan Repurchases (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 68 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R69.htm </HtmlFileName> |
| | | <LongName> 2450427 - Disclosure - Stockholders' Equity - Cash Dividends Declared (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/StockholdersEquityCashDividendsDeclaredDetails </Role> |
| | | <ShortName> Stockholders' Equity - Cash Dividends Declared (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 69 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R70.htm </HtmlFileName> |
| | | <LongName> 2453428 - Disclosure - Stock Plans - Additional Information (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/StockPlansAdditionalInformationDetails </Role> |
| | | <ShortName> Stock Plans - Additional Information (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 70 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R71.htm </HtmlFileName> |
| | | <LongName> 2454429 - Disclosure - Stock Plans - Stock-Based Compensation Expense (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/StockPlansStockBasedCompensationExpenseDetails </Role> |
| | | <ShortName> Stock Plans - Stock-Based Compensation Expense (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 71 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R72.htm </HtmlFileName> |
| | | <LongName> 2455430 - Disclosure - Stock Plans - Activity Under All Stock Plans and Weighted Average Exercise Prices (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/StockPlansActivityUnderAllStockPlansandWeightedAverageExercisePricesDetails </Role> |
| | | <ShortName> Stock Plans - Activity Under All Stock Plans and Weighted Average Exercise Prices (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 72 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R73.htm </HtmlFileName> |
| | | <LongName> 2456431 - Disclosure - Stock Plans - Total Pre-Tax Intrinsic Value of Stock Options Exercised and Total Fair Value of Shares Vested (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/StockPlansTotalPreTaxIntrinsicValueofStockOptionsExercisedandTotalFairValueofSharesVestedDetails </Role> |
| | | <ShortName> Stock Plans - Total Pre-Tax Intrinsic Value of Stock Options Exercised and Total Fair Value of Shares Vested (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 73 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R74.htm </HtmlFileName> |
| | | <LongName> 2459432 - Disclosure - Net Income Per Share - Calculation of Net Income Per Share (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/NetIncomePerShareCalculationofNetIncomePerShareDetails </Role> |
| | | <ShortName> Net Income Per Share - Calculation of Net Income Per Share (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 74 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R75.htm </HtmlFileName> |
| | | <LongName> 2462433 - Disclosure - Business Segments - Additional Information (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/BusinessSegmentsAdditionalInformationDetails </Role> |
| | | <ShortName> Business Segments - Additional Information (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 75 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R76.htm </HtmlFileName> |
| | | <LongName> 2463434 - Disclosure - Business Segments - Reconciliation of Revenue and Operating Income by Reportable Segment to Consolidated Results (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/BusinessSegmentsReconciliationofRevenueandOperatingIncomebyReportableSegmenttoConsolidatedResultsDetails </Role> |
| | | <ShortName> Business Segments - Reconciliation of Revenue and Operating Income by Reportable Segment to Consolidated Results (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 76 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R77.htm </HtmlFileName> |
| | | <LongName> 2464435 - Disclosure - Business Segments - Revenue and Long-Lived Assets by Geographic Location (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/BusinessSegmentsRevenueandLongLivedAssetsbyGeographicLocationDetails </Role> |
| | | <ShortName> Business Segments - Revenue and Long-Lived Assets by Geographic Location (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <Position> 77 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R78.htm </HtmlFileName> |
| | | <LongName> 2467436 - Disclosure - Quarterly Financial Data (Unaudited) (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/QuarterlyFinancialDataUnauditedDetails </Role> |
| | | <ShortName> Quarterly Financial Data (Unaudited) (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/QuarterlyFinancialDataUnauditedTables </ParentRole> |
| | | <Position> 78 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R79.htm </HtmlFileName> |
| | | <LongName> 2470437 - Disclosure - Subsequent Events (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/SubsequentEventsDetails </Role> |
| | | <ShortName> Subsequent Events (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/SubsequentEventsTables </ParentRole> |
| | | <Position> 79 </Position> |
| | | </Report> |
| | <Report instance="rhi-20191231.htm"> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <HtmlFileName> R80.htm </HtmlFileName> |
| | | <LongName> 2472438 - Disclosure - Schedule II - Valuation and Qualifying Accounts (Details) </LongName> |
| | | <ReportType> Sheet </ReportType> |
| | | <Role> http://roberthalf.com/role/ScheduleIIValuationandQualifyingAccountsDetails </Role> |
| | | <ShortName> Schedule II - Valuation and Qualifying Accounts (Details) </ShortName> |
| | | <MenuCategory> Details </MenuCategory> |
| | | <ParentRole> http://roberthalf.com/role/ScheduleIIValuationandQualifyingAccounts </ParentRole> |
| | | <Position> 80 </Position> |
| | | </Report> |
| | <Report> |
| | | <IsDefault> false </IsDefault> |
| | | <HasEmbeddedReports> false </HasEmbeddedReports> |
| | | <LongName> All Reports </LongName> |
| | | <ReportType> Book </ReportType> |
| | | <ShortName> All Reports </ShortName> |
| | | </Report> |
| | </MyReports> |
| <InputFiles> |
| | <File doctype="10-K" original="rhi-20191231.htm"> rhi-20191231.htm </File> |
| | <File> rhi-20191231.xsd </File> |
| | <File> rhi-20191231_cal.xml </File> |
| | <File> rhi-20191231_def.xml </File> |
| | <File> rhi-20191231_lab.xml </File> |
| | <File> rhi-20191231_pre.xml </File> |
| | <File> rhi-ex1018formofrestri.htm </File> |
| | <File> rhi-ex109serpamendedde.htm </File> |
| | <File> rhi-ex41descriptionofs.htm </File> |
| | <File> rhi10k2019ex211.htm </File> |
| | <File> rhi10k2019ex231.htm </File> |
| | <File> rhi10k2019ex311.htm </File> |
| | <File> rhi10k2019ex312.htm </File> |
| | <File> rhi10k2019ex321.htm </File> |
| | <File> rhi10k2019ex322.htm </File> |
| | </InputFiles> |
| <SupplementalFiles> |
| | <File> rhi-20191231_g1.jpg </File> |
| | </SupplementalFiles> |
| <BaseTaxonomies> |
| | <BaseTaxonomy> http://xbrl.sec.gov/dei/2019-01-31 </BaseTaxonomy> |
| | <BaseTaxonomy> http://fasb.org/srt/2019-01-31 </BaseTaxonomy> |
| | <BaseTaxonomy> http://xbrl.sec.gov/country/2017-01-31 </BaseTaxonomy> |
| | <BaseTaxonomy> http://fasb.org/us-gaap/2019-01-31 </BaseTaxonomy> |
| | </BaseTaxonomies> |
| <HasPresentationLinkbase> true </HasPresentationLinkbase> |
| <HasCalculationLinkbase> true </HasCalculationLinkbase> |
| </FilingSummary> |