FX Rate Normalization
Pull in FX rates and use database formulas to normalize values.
You may want to normalize across different currencies for a variety of reasons. In this example we’ll discuss doing so to calculate a normalized (USD) employee pay rate across different countries given data coming in from Rippling.
- Create a Google Sheet for FX conversion rates:
- One row per source currency per month (YYYY-MM-DD).
- Columns: Name (starting with "database_"), Source Currency, Amount (conversion rate), Month.
- Tab name should include "#runway".
- If you prefer to manage the data in Runway, you can directly populate a Runway database with the timeseries info (jump to step 2)
- An example of the expected format is below:
- Share Sheet and Sync to Runway:
- Add a Google Sheets integration and a query as follows, where the ID is taken from the URL of your sheet.
- Sync this sheet to a new Runway Database just for FX.
- Database Formulas:
- Create a
switch
function usingcoalesce()
in the employee's database to calculate normalized salaries. - For example
- If currency is Euro, multiply local salary by Euro-to-USD driver.
- If currency is GBP, multiply local salary by GBP-to-USD driver.
- If currency is USD, keep as is.
- This is currently nonintuitive; here’s what your formula might look like. Coalesce will return the first non-null value, so if the filter matches the first term, it’ll return
monthly cost where currency = EUR
*EUR → USDxchange rate
- Also note we are referring to the “amount” column in the FX table, and we have to aggregate it since we’re filtering on that database.
- Update and Validate:
- Keep rates updated. If you’re using a Google Sheet, data will pull daily.
- If you’re storing values in Runway directly, update it monthly!
Did this answer your question?
😞
😐
🤩
Last updated on October 17, 2023