give someone or something a run for their money
give (one) a run for (one's) money
To challenge one's ability, fortitude, or patience. Don't underestimate our opponents today—I think they'll give us a run for our money. Having an infant and a toddler sure is giving me a run for my money.
give someone or something a (good) run for their moneyprovide someone or something with challenging competition or opposition.
1997 Rugby World Beaten Welsh Cup finalists Swansea gave them a good run for their money for much of the campaign before fading away.