The TTFB will decrease if the resource isn’t cached by Cloudflare, especially on the Free plan without Argo. That is just simply due to the fact of the multiple additional steps for the resource to get to you.
You need to make sure Cloudflare caches the resources and TTFB isn’t always the best metric to check site speed.
not sure if this is related but there’s another issue which is that
website randomly start responding late for page navigation (didn’t have this issue without CF)
it happens like once every 10~20 page loading test for random inner pages
it just idling like 3~5 seconds before start responding and navigate to the next page
really want to fix this issue and make things clear
Unfortunately PMs aren’t available. If you have problems with sharing the domain do not esitate to contact support.
To contact Cloudflare Customer Support, login & go to https://dash.cloudflare.com/?account=support and select get more help. Please give Support the complete details and link to your Community post. Here’s a bit of background on Cloudflare Support for reference:
Argo won’t change the PoP you connect to. That can be due to 2 different factors:
the ISP you use forces for their reasons your traffic to go there. Unfortunately Cloudflare can’t do anything about this, you need to contact yout ISP.
Cloudflare for its own reasons (too much usage, pricing of bandwidth, etc.) can choose to remove some websites’ traffic from certain locations. This is reduced in probability the higher the plan you have, but it will never be eliminated (even Enterprise can be removed in case of issues with a specific PoP).
Just to add some info: Cloudflare won’t normally cache your html document (which is responsible for TTFB), even with “cache everything” enabled. To achieve caching of HTML pages, you would have to either create a page rule with “Edge cache TTL” + “Cache everything”, OR add cache-control headers to your html documents … However, that means you will also need to deal with the fact that the Cloudflare will serve cached html files, even if you have updated the website.
That is why html-caching is disabled by default, and also why Cloudflare generally doesn’t improve first byte time for your website. It could in some cases (like yours) also increase the TTFB (time to first byte), because requests are routed from server->Cloudflare->visitor … In your case, if requests from Australia get routed to Singapore and then back to Australia, it will for sure create a higher value … Australia has a bit of an unusual internet infrastructure, and I personally had an Australian customer who moved his website to a Singapore server because it loaded faster.
Ultimately, Cloudflare shouldn’t be causing much higher TTFB. The difference between A and B in reports could be as small as 10ms. In webpagetest.org, you can check the actual TTFB for the page, and compare the results.
Argo might help slightly, but will not make a world of difference. Essentially, you can’t expect Cloudflare to improve TTFB, but keep in mind, TTFB is only one factor of many in terms of website performance.