XML 78 R67.htm IDEA: XBRL DOCUMENT
v3.25.1

Leases - Narrative (Details) - USD ($) $ in Thousands | Mar. 31, 2025 | Dec. 31, 2024
--- | --- | ---
Lessee, Lease, Description [Line Items] |  |
Operating lease, weighted average remaining lease term | 4 years 2 months 12 days | 4 years 3 months 18 days
Operating lease, weighted average discount rate, percent | 5.30% | 5.20%
Operating Lease, Lease Not yet Commenced |  |
Lessee, Lease, Description [Line Items] |  |
Operating lease payments, leases not yet commenced | $ 496 |
Minimum |  |
Lessee, Lease, Description [Line Items] |  |
Remaining lease term (less than) | 1 year |
Renewal term | 1 year |
Termination period (less than) | 1 year |
Maximum |  |
Lessee, Lease, Description [Line Items] |  |
Remaining lease term (less than) | 8 years |
Renewal term | 5 years |
Termination period (less than) | 5 years |

X
- Definition Lessee, Operating Lease, Termination Period + References No definition available. + Details
Name: | bsy_LesseeOperatingLeaseTerminationPeriod
Namespace Prefix: | bsy_
Data Type: | xbrli:durationItemType
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 Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 842 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 7A -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 842 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 3 -Publisher FASB -URI https://asc.fasb.org/1943274/2147478964/842-20-50-3 + Details
Name: | us-gaap_LesseeLeaseDescriptionLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Remaining lease term of operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 842 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 7A -Subparagraph (c) -Publisher FASB -URI https://asc.fasb.org/1943274/2147478964/842-20-50-7A Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 842 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 3 -Subparagraph (a)(1) -Publisher FASB -URI https://asc.fasb.org/1943274/2147478964/842-20-50-3 + Details
Name: | us-gaap_LesseeOperatingLeaseRemainingLeaseTerm
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | instant

X
- Definition Term of lessee's operating lease renewal, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 842 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 3 -Subparagraph (a)(3) -Publisher FASB -URI https://asc.fasb.org/1943274/2147478964/842-20-50-3 + Details
Name: | us-gaap_LesseeOperatingLeaseRenewalTerm
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
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/exampleRef -Topic 842 -SubTopic 20 -Name Accounting Standards Codification -Section 55 -Paragraph 53 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 842 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 4 -Subparagraph (g)(4) -Publisher FASB -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4 + Details
Name: | us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent
Namespace Prefix: | us-gaap_
Data Type: | dtr-types:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. + References Reference 1: http://www.xbrl.org/2003/role/exampleRef -Topic 842 -SubTopic 20 -Name Accounting Standards Codification -Section 55 -Paragraph 53 -Publisher FASB -URI https://asc.fasb.org/1943274/2147479589/842-20-55-53 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Topic 842 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 4 -Subparagraph (g)(3) -Publisher FASB -URI https://asc.fasb.org/1943274/2147478964/842-20-50-4 + Details
Name: | us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | instant

X
- Definition Amount of unrecorded obligation to transfer funds in future for fixed or minimum amount or quantity of product and service at fixed or minimum price. Includes, but is not limited to, lease not yet commenced and take-or-pay and throughput contracts. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Topic 440 -SubTopic 10 -Name Accounting Standards Codification -Section 50 -Paragraph 4 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org/1943274/2147482648/440-10-50-4 Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Topic 842 -SubTopic 20 -Name Accounting Standards Codification -Section 50 -Paragraph 3 -Subparagraph (b) -Publisher FASB -URI https://asc.fasb.org/1943274/2147478964/842-20-50-3 + Details
Name: | us-gaap_UnrecordedUnconditionalPurchaseObligationBalanceSheetAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Details
Name: | us-gaap_UnrecordedUnconditionalPurchaseObligationByCategoryOfItemPurchasedAxis=us-gaap_OperatingLeaseLeaseNotYetCommencedMember
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: |