I think a good place to offer an upsell deal is the cart page, you can show frequently bought together product or related items so customer can add to cart immediately, then direct them to the checkout page.
The product page would be the best place to upsell/cross-sell. when visitors lands on the product page and if they like the product they will make up their mind in purchasing the product. This is the time where you will sell either a relevant product or complementary product to the customer, but then it also depends on you conversion goals if you are cross-selling after customer purchases a products or you want to increase average order value.
You can checkout this app here Capital Upsell - Upsell Popups which gives you the ability to upsell/cross-sell on the product page with continues user journey.
I think this depends on how much time do people spend on your page. Blog or thank you page might not be that helpful as one is far from purchase and thank you page is post-purchase.
You can have it when people add items to the cart, spend X seconds, scroll x percentage, during checkout, etc using Engati. Here’s one short video on how it’d work
Cross-sells are best on Product pages as Cross-selling is a strategy to push more products to the cart.
Upsell is a tool to add up extra items to those you already have in the cart. Products you upsell are basically the ones the customer wasn’t planning to buy initially thus a slight encouraging move might be needed. A discount or a free gift if the offer is accepted should do the trick. Recom.ai does all these things and more. Let me know if you would be interested in having a look at how the app can help you raise the check.