diff --git a/models/intermediate/cross/int_monthly_aggregated_metrics_history_by_deal.sql b/models/intermediate/cross/int_monthly_aggregated_metrics_history_by_deal.sql deleted file mode 100644 index 258e6cd..0000000 --- a/models/intermediate/cross/int_monthly_aggregated_metrics_history_by_deal.sql +++ /dev/null @@ -1,307 +0,0 @@ -/* -This model aggregates the different metrics by deal for those hosts that have it assigned. - -*/ -with - int_kpis__dimension_deals as (select * from {{ ref("int_kpis__dimension_deals") }}), - int_kpis__agg_dates_main_kpis as ( - select * - from {{ ref("int_kpis__agg_dates_main_kpis") }} - where - dimension in ('by_deal') - and dimension_value <> 'UNSET' - and is_end_of_month = true - ), - daily_deal_lifecycle as (select * from {{ ref("int_kpis__lifecycle_daily_deal") }}), - int_kpis__dimension_daily_accommodation as ( - select * from {{ ref("int_kpis__dimension_daily_accommodation") }} - ), - listings as ( - select * - from {{ ref("int_kpis__agg_daily_listings") }} - where - dimension in ('by_deal') - and dimension_value <> 'UNSET' - and is_end_of_month = true - ), - created_bookings as ( - select * - from {{ ref("int_kpis__agg_monthly_created_bookings") }} - where dimension in ('by_deal') and dimension_value <> 'UNSET' - ), - check_out_bookings as ( - select * - from {{ ref("int_kpis__agg_monthly_check_out_bookings") }} - where dimension in ('by_deal') and dimension_value <> 'UNSET' - ), - billable_bookings as ( - select * - from {{ ref("int_kpis__agg_monthly_billable_bookings") }} - where dimension in ('by_deal') and dimension_value <> 'UNSET' - ), - created_guest_journeys as ( - select * - from {{ ref("int_kpis__agg_monthly_created_guest_journeys") }} - where dimension in ('by_deal') and dimension_value <> 'UNSET' - ), - started_guest_journeys as ( - select * - from {{ ref("int_kpis__agg_monthly_started_guest_journeys") }} - where dimension in ('by_deal') and dimension_value <> 'UNSET' - ), - completed_guest_journeys as ( - select * - from {{ ref("int_kpis__agg_monthly_completed_guest_journeys") }} - where dimension in ('by_deal') and dimension_value <> 'UNSET' - ), - guest_journeys_with_payment as ( - select * - from {{ ref("int_kpis__agg_monthly_guest_journeys_with_payment") }} - where dimension in ('by_deal') and dimension_value <> 'UNSET' - ), - guest_payments as ( - select * - from {{ ref("int_kpis__agg_monthly_guest_payments") }} - where dimension in ('by_deal') and dimension_value <> 'UNSET' - ), - invoiced_revenue as ( - select * - from {{ ref("int_kpis__agg_monthly_invoiced_revenue") }} - where dimension in ('by_deal') and dimension_value <> 'UNSET' - ), - host_resolutions as ( - select * - from {{ ref("int_kpis__agg_monthly_host_resolutions") }} - where dimension in ('by_deal') and dimension_value <> 'UNSET' - ), - total_and_retained_revenue as ( - select * - from {{ ref("int_kpis__agg_monthly_total_and_retained_revenue") }} - where dimension in ('by_deal') and dimension_value <> 'UNSET' - ) - -select - d.year, - d.month, - d.day, - d.date, - -- DEAL STATIC ATTRIBUTES -- - ikdd.id_deal, - ikdd.client_type, - ikdd.main_deal_name, - ikdd.has_active_pms, - ikdd.active_pms_list, - coalesce( - dda.active_accommodations_per_deal_segmentation, 'UNSET' - ) as active_accommodations_per_deal_segmentation, - ikdd.main_billing_country_iso_3_per_deal, - -- DEAL BUSINESS SCOPE - case - when ikdd.client_type = 'API' - then 'API' - when ikdd.client_type = 'PLATFORM' - then - case - when - ikdd.id_deal is not null - and d.date >= ikdd.min_user_in_new_dash_since_date_utc - then 'New Dash' - else 'Old Dash' - end - else 'UNSET' - end as business_scope, - - -- DEAL LIFECYCLE -- - daily_deal_lifecycle.deal_lifecycle_state, - - -- CREATED BOOKINGS -- - created_bookings.created_bookings, - created_bookings.cancelled_created_bookings, - created_bookings.not_cancelled_created_bookings, - created_bookings.cancelled_created_bookings_rate, - - -- CHECK OUT BOOKINGS -- - check_out_bookings.check_out_bookings, - check_out_bookings.cancelled_check_out_bookings, - check_out_bookings.not_cancelled_check_out_bookings, - check_out_bookings.billable_check_out_bookings, - check_out_bookings.cancelled_check_out_bookings_rate, - - -- OTHER BOOKINGS -- - billable_bookings.billable_bookings, - - -- GUEST JOURNEYS -- - created_guest_journeys.created_guest_journeys, - started_guest_journeys.started_guest_journeys, - completed_guest_journeys.completed_guest_journeys, - guest_journeys_with_payment.guest_journeys_with_payment as paid_guest_journeys, - cast(started_guest_journeys.started_guest_journeys as decimal) - / created_guest_journeys.created_guest_journeys as start_rate_guest_journey, - cast(completed_guest_journeys.completed_guest_journeys as decimal) - / started_guest_journeys.started_guest_journeys as completion_rate_guest_journey, - 1 - - cast(completed_guest_journeys.completed_guest_journeys as decimal) - / started_guest_journeys.started_guest_journeys as incompletion_rate_guest_journey, - cast(guest_journeys_with_payment.guest_journeys_with_payment as decimal) - / completed_guest_journeys.completed_guest_journeys as payment_rate_guest_journey, - - -- LISTINGS -- - listings.new_listings, - listings.never_booked_listings, - listings.first_time_booked_listings, - listings.active_listings, - listings.churning_listings, - listings.inactive_listings, - listings.reactivated_listings, - listings.listings_booked_in_month, - listings.listings_booked_in_6_months, - listings.listings_booked_in_12_months, - - -- HOST (OPERATOR) REVENUE -- - -- OLD DASH -- - invoiced_revenue.xero_old_dashboard_booking_net_fees_in_gbp, - invoiced_revenue.xero_listing_net_fees_in_gbp, - invoiced_revenue.xero_verification_net_fees_in_gbp, - -- NEW DASH -- - invoiced_revenue.xero_basic_protection_net_fees_in_gbp, - invoiced_revenue.xero_waiver_pro_net_fees_in_gbp, - invoiced_revenue.xero_id_verification_net_fees_in_gbp, - invoiced_revenue.xero_protection_plus_net_fees_in_gbp, - invoiced_revenue.xero_screening_plus_net_fees_in_gbp, - invoiced_revenue.xero_sex_offenders_check_net_fees_in_gbp, - invoiced_revenue.xero_protection_pro_net_fees_in_gbp, - -- GLOBAL -- - invoiced_revenue.xero_booking_net_fees_in_gbp, - invoiced_revenue.xero_operator_net_fees_in_gbp, - - -- APIs REVENUE -- - invoiced_revenue.xero_apis_net_fees_in_gbp, - invoiced_revenue.xero_e_deposit_net_fees_in_gbp, - invoiced_revenue.xero_guesty_net_fees_in_gbp, - - -- HOST RESOLUTIONS -- - host_resolutions.xero_host_resolution_amount_paid_in_gbp, - host_resolutions.xero_host_resolution_payment_count, - cast(host_resolutions.xero_host_resolution_amount_paid_in_gbp as decimal) - / created_bookings.created_bookings - as host_resolution_amount_paid_per_created_booking, - {{ - return_capped_value( - "cast(host_resolutions.xero_host_resolution_payment_count as decimal)/created_bookings.created_bookings", - -1, - 1, - ) - }} - as host_resolution_payment_per_created_booking_ratio, - - -- GUEST REVENUE AND PAYMENTS -- - guest_payments.deposit_fees_in_gbp, - guest_payments.waiver_payments_in_gbp, - invoiced_revenue.xero_waiver_paid_back_to_host_in_gbp, - nullif( - coalesce(guest_payments.waiver_payments_in_gbp, 0) - + coalesce(invoiced_revenue.xero_waiver_paid_back_to_host_in_gbp, 0), - 0 - ) as waiver_net_fees_in_gbp, - guest_payments.checkin_cover_fees_in_gbp, - guest_payments.total_guest_payments_in_gbp, - - -- TOTAL REVENUE -- - total_and_retained_revenue.total_revenue_in_gbp, - - -- GUEST REVENUE AND PAYMENTS WEIGHTED METRICS -- - guest_payments.total_guest_payments_in_gbp / nullif( - completed_guest_journeys.completed_guest_journeys, 0 - ) as guest_payments_per_completed_guest_journey, - guest_payments.total_guest_payments_in_gbp / nullif( - guest_journeys_with_payment.guest_journeys_with_payment, 0 - ) as guest_payments_per_paid_guest_journey, - - -- TOTAL REVENUE WEIGHTED METRICS -- - coalesce(total_and_retained_revenue.total_revenue_in_gbp, 0) - / nullif(created_bookings.created_bookings, 0) as total_revenue_per_created_booking, - coalesce(total_and_retained_revenue.total_revenue_in_gbp, 0) / nullif( - created_guest_journeys.created_guest_journeys, 0 - ) as total_revenue_per_created_guest_journey, - coalesce(total_and_retained_revenue.total_revenue_in_gbp, 0) / nullif( - listings.listings_booked_in_month, 0 - ) as total_revenue_per_listings_booked_in_month, - - -- INCOME RETAINED -- - total_and_retained_revenue.revenue_retained_in_gbp, - {{ - return_capped_value( - "total_and_retained_revenue.revenue_retained_in_gbp/total_and_retained_revenue.total_revenue_in_gbp", - -1, - 1, - ) - }} - as revenue_retained_ratio, - - -- INCOME RETAINED POST RESOLUTIONS-- - total_and_retained_revenue.revenue_retained_post_resolutions_in_gbp, - {{ - return_capped_value( - "total_and_retained_revenue.revenue_retained_post_resolutions_in_gbp/total_and_retained_revenue.total_revenue_in_gbp", - -1, - 1, - ) - }} - as revenue_retained_post_resolutions_ratio - -from int_kpis__agg_dates_main_kpis d -left join int_kpis__dimension_deals ikdd on d.dimension_value = ikdd.id_deal -left join - daily_deal_lifecycle - on d.date = daily_deal_lifecycle.date - and d.dimension_value = daily_deal_lifecycle.id_deal -left join - int_kpis__dimension_daily_accommodation as dda - on d.date = dda.date - and d.dimension_value = dda.id_deal -left join - created_bookings - on d.date = created_bookings.end_date - and d.dimension_value = created_bookings.dimension_value -left join - check_out_bookings - on d.date = check_out_bookings.end_date - and d.dimension_value = check_out_bookings.dimension_value -left join - billable_bookings - on d.date = billable_bookings.end_date - and d.dimension_value = billable_bookings.dimension_value -left join - created_guest_journeys - on d.date = created_guest_journeys.end_date - and d.dimension_value = created_guest_journeys.dimension_value -left join - started_guest_journeys - on d.date = started_guest_journeys.end_date - and d.dimension_value = started_guest_journeys.dimension_value -left join - completed_guest_journeys - on d.date = completed_guest_journeys.end_date - and d.dimension_value = completed_guest_journeys.dimension_value -left join - guest_journeys_with_payment - on d.date = guest_journeys_with_payment.end_date - and d.dimension_value = guest_journeys_with_payment.dimension_value -left join - guest_payments - on d.date = guest_payments.end_date - and d.dimension_value = guest_payments.dimension_value -left join - listings on d.date = listings.date and d.dimension_value = listings.dimension_value -left join - invoiced_revenue - on d.date = invoiced_revenue.end_date - and d.dimension_value = invoiced_revenue.dimension_value -left join - host_resolutions - on d.date = host_resolutions.end_date - and d.dimension_value = host_resolutions.dimension_value -left join - total_and_retained_revenue - on d.date = total_and_retained_revenue.end_date - and d.dimension_value = total_and_retained_revenue.dimension_value diff --git a/models/intermediate/cross/schema.yml b/models/intermediate/cross/schema.yml index 82e4d89..f82940f 100644 --- a/models/intermediate/cross/schema.yml +++ b/models/intermediate/cross/schema.yml @@ -350,108 +350,6 @@ models: positive impact for Superhog, otherwise is equal to relative_increment. This value is specially created for formatting in PBI - - name: int_monthly_aggregated_metrics_history_by_deal - deprecation_date: 2025-04-28 08:00:00 - description: | - This model aggregates the monthly historic information regarding the different metrics computed - at deal level. The primary sources of data are the `int_yyy__monthly_XXXXX_history_by_deal` - models which contain the raw metrics data per source. - - Unlike the int_mtd_aggregated_metrics, this model does not abstract each metric, since - no comparison versus last year is performed. In short, it just gathers the information stored - in the abovementioned models. - - To keep in mind: aggregating the information of this model will not necessarily result into - the int_mtd_aggregated metrics because 1) the mtd version contains more computing dates - than the by deal version, the latest being a subset of the first, and 2) the deal based model - enforces that a booking/guest journey/listing/etc has a host with a deal assigned, which is - not necessarily the case. - - data_tests: - - dbt_utils.unique_combination_of_columns: - combination_of_columns: - - date - - id_deal - - columns: - - name: date - data_type: date - description: The last day of the month or yesterday for historic metrics. - data_tests: - - not_null - - - name: id_deal - data_type: character varying - description: Id of the deal associated to the host. - data_tests: - - not_null - - - name: client_type - data_type: string - description: | - Type of client. It can be either PLATFORM or API. - data_tests: - - not_null - - accepted_values: - values: - - PLATFORM - - API - - - name: business_scope - data_type: string - description: | - Business scope identifying the metric source. - data_tests: - - not_null - - accepted_values: - values: - - "Old Dash" - - "New Dash" - - "API" - - "UNSET" - - - name: main_deal_name - data_type: string - description: | - Main name for this ID deal. - data_tests: - - not_null - - - name: has_active_pms - data_type: boolean - description: | - Does the deal have an active associated PMS. - data_tests: - - not_null - - - name: active_pms_list - data_type: string - description: | - Name of the active PMS associated with the deal. It can have more than - one PMS associated with it. It can be null if it doesn't have any PMS associated. - - - name: active_accommodations_per_deal_segmentation - data_type: string - description: | - Segment value based on the number of listings booked in 12 months - for a given deal and date. - data_tests: - - not_null - - accepted_values: - values: - - "0" - - "01-05" - - "06-20" - - "21-60" - - "61+" - - "UNSET" - - - name: main_billing_country_iso_3_per_deal - data_type: string - description: | - ISO 3166-1 alpha-3 main country code in which the Deal is billed. - In some cases it's null. - - name: int_monthly_growth_score_by_deal deprecation_date: 2025-05-23 08:00:00 description: | diff --git a/models/reporting/general/monthly_aggregated_metrics_history_by_deal.sql b/models/reporting/general/monthly_aggregated_metrics_history_by_deal.sql deleted file mode 100644 index b90e40b..0000000 --- a/models/reporting/general/monthly_aggregated_metrics_history_by_deal.sql +++ /dev/null @@ -1,194 +0,0 @@ -with - int_monthly_aggregated_metrics_history_by_deal as ( - select * from {{ ref("int_monthly_aggregated_metrics_history_by_deal") }} - ) - -select - year as year, - month as month, - day as day, - date as date, - id_deal as id_deal, - client_type as client_type, - business_scope as business_scope, - main_deal_name as main_deal_name, - main_billing_country_iso_3_per_deal as main_billing_country_iso_3_per_deal, - deal_lifecycle_state as deal_lifecycle_state, - created_bookings as created_bookings, - cancelled_created_bookings as cancelled_created_bookings, - not_cancelled_created_bookings as not_cancelled_created_bookings, - cancelled_created_bookings_rate as cancelled_created_bookings_rate, - check_out_bookings as check_out_bookings, - cancelled_check_out_bookings as cancelled_check_out_bookings, - not_cancelled_check_out_bookings as not_cancelled_check_out_bookings, - billable_check_out_bookings as billable_check_out_bookings, - cancelled_check_out_bookings_rate as cancelled_check_out_bookings_rate, - billable_bookings as billable_bookings, - created_guest_journeys as created_guest_journeys, - started_guest_journeys as started_guest_journeys, - completed_guest_journeys as completed_guest_journeys, - paid_guest_journeys as paid_guest_journeys, - start_rate_guest_journey as start_rate_guest_journey, - completion_rate_guest_journey as completion_rate_guest_journey, - incompletion_rate_guest_journey as incompletion_rate_guest_journey, - payment_rate_guest_journey as payment_rate_guest_journey, - new_listings as new_listings, - first_time_booked_listings as first_time_booked_listings, - churning_listings as churning_listings, - listings_booked_in_month as listings_booked_in_month, - listings_booked_in_6_months as listings_booked_in_6_months, - listings_booked_in_12_months as listings_booked_in_12_months, - -- Avoid displaying revenue figures until invoicing period finishes - case - when {{ is_date_before_20th_of_previous_month("date") }} - then total_revenue_in_gbp - else null - end as total_revenue_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then total_revenue_per_created_booking - else null - end as total_revenue_per_created_booking, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then total_revenue_per_created_guest_journey - else null - end as total_revenue_per_created_guest_journey, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then total_revenue_per_listings_booked_in_month - else null - end as total_revenue_per_listings_booked_in_month, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_operator_net_fees_in_gbp - else null - end as xero_operator_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_apis_net_fees_in_gbp - else null - end as xero_apis_net_fees_in_gbp, - total_guest_payments_in_gbp as total_guest_revenue_in_gbp, - guest_payments_per_completed_guest_journey - as guest_revenue_per_completed_guest_journey, - guest_payments_per_paid_guest_journey as guest_revenue_per_paid_guest_journey, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_host_resolution_amount_paid_in_gbp - else null - end as xero_host_resolution_amount_paid_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_host_resolution_payment_count - else null - end as xero_host_resolution_payment_count, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then host_resolution_amount_paid_per_created_booking - else null - end as host_resolution_amount_paid_per_created_booking, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then host_resolution_payment_per_created_booking_ratio - else null - end as host_resolution_payment_per_created_booking_ratio, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_old_dashboard_booking_net_fees_in_gbp - else null - end as xero_old_dashboard_booking_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_booking_net_fees_in_gbp - else null - end as xero_booking_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_listing_net_fees_in_gbp - else null - end as xero_listing_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_verification_net_fees_in_gbp - else null - end as xero_verification_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_basic_protection_net_fees_in_gbp - else null - end as xero_basic_protection_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_waiver_pro_net_fees_in_gbp - else null - end as xero_waiver_pro_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_id_verification_net_fees_in_gbp - else null - end as xero_id_verification_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_protection_plus_net_fees_in_gbp - else null - end as xero_protection_plus_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_screening_plus_net_fees_in_gbp - else null - end as xero_screening_plus_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_sex_offenders_check_net_fees_in_gbp - else null - end as xero_sex_offenders_check_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_protection_pro_net_fees_in_gbp - else null - end as xero_protection_pro_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_guesty_net_fees_in_gbp - else null - end as xero_guesty_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_e_deposit_net_fees_in_gbp - else null - end as xero_e_deposit_net_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then xero_waiver_paid_back_to_host_in_gbp - else null - end as xero_waiver_paid_back_to_host_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then waiver_net_fees_in_gbp - else null - end as waiver_net_fees_in_gbp, - deposit_fees_in_gbp as deposit_fees_in_gbp, - waiver_payments_in_gbp as waiver_payments_in_gbp, - checkin_cover_fees_in_gbp as checkin_cover_fees_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then revenue_retained_in_gbp - else null - end as revenue_retained_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then revenue_retained_ratio - else null - end as revenue_retained_ratio, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then revenue_retained_post_resolutions_in_gbp - else null - end as revenue_retained_post_resolutions_in_gbp, - case - when {{ is_date_before_20th_of_previous_month("date") }} - then revenue_retained_post_resolutions_ratio - else null - end as revenue_retained_post_resolutions_ratio -from int_monthly_aggregated_metrics_history_by_deal diff --git a/models/reporting/general/schema.yml b/models/reporting/general/schema.yml index 9e5ff6f..af71d2a 100644 --- a/models/reporting/general/schema.yml +++ b/models/reporting/general/schema.yml @@ -458,142 +458,6 @@ models: positive impact for Truvi, otherwise is equal to relative_increment. This value is specially created for formatting in PBI - - name: monthly_aggregated_metrics_history_by_deal - deprecation_date: 2025-04-28 08:00:00 - description: | - This model aggregates the monthly historic information regarding the different metrics computed - at deal level. The primary source of data is the `int_monthly_XXXXX_history_by_deal` - model which contain the raw metrics data per source. - - This table is used to provide "By Deal" metrics in the Business Overview reporting. - Unlike the mtd_aggregated_metrics, this model does not abstract each metric, since - no comparison versus last year is performed. In short, it just gathers the information stored - in the abovementioned models. - - To keep in mind: aggregating the information of this model will not necessarily result into - the int_mtd_aggregated_metrics because 1) the mtd version contains more computing dates - than the by deal version, the latest being a subset of the first, and 2) the deal based model - enforces that a booking/guest journey/listing/etc has a host with a deal assigned, which is - not necessarily the case. - - data_tests: - - dbt_utils.unique_combination_of_columns: - combination_of_columns: - - date - - id_deal - - columns: - - name: date - data_type: date - description: The last day of the month for historic metrics. - data_tests: - - not_null - - - name: id_deal - data_type: character varying - description: Id of the deal associated to the host. - data_tests: - - not_null - - - name: client_type - data_type: string - description: | - Type of client. It can be either PLATFORM or API. - data_tests: - - not_null - - accepted_values: - values: - - PLATFORM - - API - - - name: business_scope - data_type: string - description: | - Business scope identifying the metric source. - data_tests: - - not_null - - accepted_values: - values: - - "Old Dash" - - "New Dash" - - "API" - - "UNSET" - - - name: main_deal_name - data_type: string - description: | - Main name for this ID deal. - data_tests: - - not_null - - - name: main_billing_country_iso_3_per_deal - data_type: string - description: | - ISO 3166-1 alpha-3 main country code in which the Deal is billed. - In some cases it's null. - - - name: year - data_type: int - description: year number of the given date. - data_tests: - - not_null - - - name: month - data_type: int - description: month number of the given date. - data_tests: - - not_null - - - name: day - data_type: int - description: day monthly number of the given date. - data_tests: - - not_null - - - name: host_resolution_amount_paid_per_created_booking - data_type: decimal - description: | - Host resolution amount paid divided by the number of - created bookings in the time window. It can be null if - no resolution payments were made by the host. - It can be negative or positive. - - - name: host_resolution_payment_per_created_booking_ratio - data_type: decimal - description: | - Ratio of Host resolution payment count divided by the - number of created bookings in the time window. It can be null - if no resolution payments were made by the host. - It is capped between -1 and 1. - data_tests: - - dbt_expectations.expect_column_values_to_be_between: - min_value: -1 - max_value: 1 - strictly: false - - - name: revenue_retained_ratio - data_type: decimal - description: | - Ratio of Revenue Retained divided by Total Revenue. - It is capped between -1 and 1. It can be Null - data_tests: - - dbt_expectations.expect_column_values_to_be_between: - min_value: -1 - max_value: 1 - strictly: false - - - name: revenue_retained_post_resolutions_ratio - data_type: decimal - description: | - Ratio of Revenue Retained Post-Resolutions - divided by Total Revenue. - It is capped between -1 and 1. It can be Null - data_tests: - - dbt_expectations.expect_column_values_to_be_between: - min_value: -1 - max_value: 1 - strictly: false - - name: monthly_growth_score_by_deal deprecation_date: 2025-05-23 08:00:00 description: |