Assuming you are using sklearn’s r2_score function, the values can range from 1.0 to negative infinity:
Best possible score is 1.0 and it can be negative (because the model can be arbitrarily worse). In the general case when the true y is non-constant, a constant model that always predicts the average y disregarding the input features would get a
score of 0.0.