Run to view results
Run to view results
SELECT
start_date,
IFNULL(costInUsd, 0) AS costInUsd,
IFNULL(conversionValueInLocalCurrency, 0) AS conversionValueInLocalCurrency
FROM linkedin_ads.ad_campaign_analytics;
Run to view results
Run to view results
WITH base_data AS (
SELECT
segments_date,
-- Convert micros to actual EUR then to USD
(metrics_cost_micros / 1000000.0) / rate AS spend_usd,
-- Convert EUR value to USD
metrics_all_conversions_value / rate AS revenue_usd
FROM
google_ads.account_performance_report apr
LEFT JOIN currency.daily_history ch
ON apr.segments_date = CAST(ch.date AS DATE)
AND ch.from_currency = 'USD'
AND ch.to_currency = 'EUR'
WHERE
-- Ensure we have valid cost and conversion data
metrics_cost_micros IS NOT NULL
)
SELECT
segments_date,
ROUND(spend_usd, 2) as spend_usd,
ROUND(revenue_usd, 2) as revenue_usd,
ROUND(revenue_usd - spend_usd, 2) as profit_usd
FROM
base_data
ORDER BY
segments_date;
Run to view results
Run to view results
SELECT
charges.created AS transaction_date,
charges.id AS charge_id,
customers.name AS customer_name,
JSON_EXTRACT_SCALAR(TO_JSON_STRING(customers.address), '$.country') as customer_country,
charges.currency,
charges.amount / 100 AS charge_amount,
charges.source_account AS charge_source,
-- Base net amount (excluding tax and refunds)
(charges.amount - IFNULL(invoices.tax, 0) - IFNULL(charges.amount_refunded, 0)) / 100 AS net_amount,
-- Standardized amount in USD
CASE
WHEN UPPER(charges.currency) = 'USD' THEN
(charges.amount - IFNULL(invoices.tax, 0) - IFNULL(charges.amount_refunded, 0)) / 100
WHEN UPPER(charges.currency) = 'EUR' THEN
((charges.amount - IFNULL(invoices.tax, 0) - IFNULL(charges.amount_refunded, 0)) / 100) / IFNULL(dh.rate, 0.90)
END AS amount_usd
FROM views_stripe.charges AS charges
LEFT JOIN views_stripe.invoices AS invoices
ON charges.invoice = invoices.id
LEFT JOIN views_stripe.customers AS customers
ON charges.customer = customers.id
LEFT JOIN `currency.daily_history` AS dh
ON DATE(charges.created) = PARSE_DATE('%Y-%m-%d', dh.date)
AND dh.from_currency = 'USD'
AND dh.to_currency = 'EUR'
WHERE charges.status = "succeeded"
AND charges.refunded = false;
Run to view results
Run to view results