According to what I have learned there is no minimum sample size for a t-test. In fact the t-test is suitable for cases where the $n$ sample size is: 3 and more.
Even $n=2$ would work.
A paired t-test on observations $\{X_{1i}\}_{i=1}^n$ and $\{X_{2i}\}_{i=1}^n$ is the same as a one-sample t test on differences. *
You choose t-test well, since you don't know the $\sigma$ of the population, i.e. z-test would not work for your case unless you somehow interact with the God and get $\sigma$ from it.
In other words, you should do t-test as you do, where t-distribution is a sample distribution behind the sampling. This distribution further assumes you relay on sample SD $S$ (standard deviation of the sample).
Since $S$ brings uncertainty, unless $n$ is big (where we usually assume $\sigma \approx S$) we decrease the degrees of freedom.
$$ \frac{\bar{x}-\mu}{\sigma / \sqrt{n}} \sim z \longrightarrow \frac{\bar{x}-\mu}{s / \sqrt{n}} \sim t_{\mathrm{n}-1} $$
Once we calculate the sample mean $\bar X$ we can estimate the confidence interval.
$$ \bar X \pm t \frac{S}{\sqrt{n}} $$
Where $t$ you can get in R via the 95% confidence interval rule:
t = qt(0.975,df=n-1)
If the normal distribution assumption, in the end, turns out to be false, can I turn to Wilcoxon signed-rank in the end?
You need to have normal distribution or something like close to normal if your number of samples is relatively small say smaller than 30.
Someone said I should not intimidate with the 30 number, but for now I assume if I have at least 30 samples samples adhere to the Normal distribution based on the Central Limit Theorem.
I plan to calculate soon why the 30 is the important number in statistics, but I don't have the power to ask more questions at the moment :).
This will be possible based on OVL of two univariate Gaussians or based on KL divergence, but for now say that with $n=30$ we have the enough power to say the t-distribution is close to Normal.
To calculate the power I found this R code:
power.t.test(n = 20, delta = 1)
power.t.test(power = .90, delta = 1)
First one should answer the question what is the power of 20 samples, and second how many samples do you need to gain the 0.9 power.
I don't know what is delta in here, but it must me something important, documentation is lacking some detailed facts so I need to examine.
So with 30+ samples you will have the normal distribution assumption, no need for rank tests.
why are sample sizes in paired t-tests much lower when comparing to tests like two-way ANOVA (for example)? I see paired t-tests of size 30 while two-way ANOVA (with a control group) is around >200
ANOVA simplified have to be the same as t-test but for 3 or more samples we compare. So if you have some strange results you may share the R or Python code to replicate.