XML 34 R59.htm IDEA: XBRL DOCUMENT
v3.19.3.a.u2

Leasing Arrangements - Additional Information (Detail) $ in Millions | 12 Months Ended
--- | ---
Dec. 31, 2019 USD ($) Restaurant | Dec. 31, 2018 USD ($) Restaurant | Dec. 31, 2017 USD ($) Restaurant
Operating Leased Assets [Line Items] |  |  |
Net Investment in Lease, Change in Present Value, Expense (Reversal) | $ 900.0 |  |
Lease term | 20 years |  |
Weighted Average Lease Term | 20 years |  |
Number of Restaurants | Restaurant | 38,695 | 37,855 | 37,241
Operating Lease, Weighted Average Discount Rate, Percent | 4.00% |  |
Company-operated restaurants: |  |  |
Operating Leased Assets [Line Items] |  |  |
Number of Restaurants | 2,636 | 2,770 | 3,133
Percent rents in excess of minimum rents | $ 74.4 | $ 82.1 | $ 115.6
Franchised restaurants: |  |  |
Operating Leased Assets [Line Items] |  |  |
Number of Restaurants | 36,059 | 35,085 | 34,108
Percent rents in excess of minimum rents | $ 200.7 | $ 200.8 | $ 204.9
Minimum |  |  |
Operating Leased Assets [Line Items] |  |  |
Escalation timing | 1 year |  |
Maximum |  |  |
Operating Leased Assets [Line Items] |  |  |
Escalation timing | 5 years |  |

X
- Definition Escalation Timing + References No definition available. + Details
Name: | mcd_EscalationTiming
Namespace Prefix: | mcd_
Data Type: | us-types:durationStringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Increase in the present value of the lease liability since adoption of ASC 842 + References No definition available. + Details
Name: | mcd_Increaseinleaseliability
Namespace Prefix: | mcd_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Lease Term + References No definition available. + Details
Name: | mcd_LeaseTerm
Namespace Prefix: | mcd_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Percentage rent expense based on sales in excess of minimum rents. + References No definition available. + Details
Name: | mcd_PercentageOfRent
Namespace Prefix: | mcd_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Weighted Average Lease Term + References No definition available. + Details
Name: | mcd_WeightedAverageLeaseTerm
Namespace Prefix: | mcd_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Represents the number of restaurants. + References No definition available. + Details
Name: | us-gaap_NumberOfRestaurants
Namespace Prefix: | us-gaap_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Weighted average discount rate for operating lease calculated at point in time. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 4 -Subparagraph (g)(4) -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918686-209980 Reference 2: http://www.xbrl.org/2003/role/exampleRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 55 -Paragraph 53 -URI http://asc.fasb.org/extlink&oid=77888399&loc=SL77918982-209971 + Details
Name: | us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent
Namespace Prefix: | us-gaap_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | instant

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_OperatingLeasedAssetsLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | mcd_RestaurantOwnershipTypeAxis=us-gaap_EntityOperatedUnitsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | mcd_RestaurantOwnershipTypeAxis=us-gaap_FranchisedUnitsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MinimumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_RangeAxis=srt_MaximumMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |