This is quite advanced stuff. More degree-level BAEC knowledge rather than the normal A-level. Here’s what I know:
This system was introduced in 2007, and is similar to that deployed by other oneworld airlines.
It tracks your “commercial” value, such as spend, purely on BA metal, rather than oneworld.
Your CIV score changes every 30 days based on your revenue spend with BA over the past 12 months. BAsed on time of spend, unlike your BAEC status, whcih is based on when you actually travel.
My understanding is that Golds can be as low as 36, but that might be EuroGold, with normal Gold being 39 as you say. But I think 36 is base level Gold.
Though this is not scientific, and is purely based on my personal spend, I reckon it’s about 1 point for every £500 spent. There does seem to be an additional component to the formula, possibly giving a greater points “bonus” for the type of ticket purchased (e.g. fully flex/Club vs. First etc.). Certain corporate BA customers also appear to earn certain additional CIV points to its BAEC cardholders, but not certain on that.
Note that BA people can be quite defensive in revealing this score because of data protection issues, so if you have an unrequited urge to know how you stack up, do be aware of this to avoid being offended if the information is refused.
Frankly I can’t think of anything less private than my BA CIV score, especially considering some of the more flagrant data protection issues which afflict BA.