XML 71 R59.htm IDEA: XBRL DOCUMENT
v3.20.2

Revenue - Estimated future revenue (Details) $ in Thousands | 6 Months Ended
--- | ---
Jun. 30, 2020 USD ($)
Revenue |
Total estimated future revenue | $ 393,790
Sales of fuel cell systems |
Revenue |
Total estimated future revenue | 71,402
Sale of hydrogen installations and other infrastructure |
Revenue |
Total estimated future revenue | 71,753
Services performed on fuel cell systems and related infrastructure |
Revenue |
Total estimated future revenue | 94,725
Power Purchase Agreements |
Revenue |
Total estimated future revenue | 151,793
Other |
Revenue |
Total estimated future revenue | $ 4,117
Maximum | Sales of fuel cell systems |
Revenue |
Duration of estimated revenue expected to be recognized in future (in years) | 1 year
Maximum | Services performed on fuel cell systems and related infrastructure |
Revenue |
Duration of estimated revenue expected to be recognized in future (in years) | 7 years
Maximum | Power Purchase Agreements |
Revenue |
Duration of estimated revenue expected to be recognized in future (in years) | 7 years
Minimum | Services performed on fuel cell systems and related infrastructure |
Revenue |
Duration of estimated revenue expected to be recognized in future (in years) | 5 years
Minimum | Power Purchase Agreements |
Revenue |
Duration of estimated revenue expected to be recognized in future (in years) | 5 years

X
- Definition Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format. + References No definition available. + Details
Name: | plug_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfaction
Namespace Prefix: | plug_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

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

X
- Definition Amount of transaction price allocated to performance obligation that has not been recognized as revenue. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 13 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=118956577&loc=SL49130556-203045 + Details
Name: | us-gaap_RevenueRemainingPerformanceObligation
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Details
Name: | srt_ProductOrServiceAxis=plug_SalesOfFuelCellSystemsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=plug_SaleOfHydrogenInstallationsAndOtherInfrastructureMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=plug_ServicesPerformedOnFuelCellSystemsAndRelatedInfrastructureMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=plug_PowerPurchaseAgreementsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=plug_OtherProductAndServicesMember
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: |

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