⚠ Underpowered: publication-bias tests are unreliable with fewer than 10 studies.
Asymmetry test
Statistic
p
Peters Cochrane
2.22
0.062
Begg
0.42
0.677
Egger
0.36
0.729
Peters (recommended): p = 0.062 (< 0.10, the usual threshold for these low-power tests) — possible small-study effects. · Trim-and-fill (what-if) No studies were imputed — the adjusted estimate matches the original.
ระบบอ่านผล test ว่าอาจมี small-study effects เมื่อ p < 0.10 (เกณฑ์ที่นิยมใช้กับ test กลุ่มนี้ซึ่งมีกำลังต่ำ) ค่า p = 0.062 ของ Peters ด้านบนจึงถูกแจ้งเตือน · มีน้อยกว่า 10 การศึกษาระบบยังรันให้ แต่จะติดป้ายเตือน "Underpowered" ทั้งในรายงานและในบทความ และ GRADE จะไม่แนะนำให้ลดระดับจาก test เหล่านี้ · ข้อมูล prevalence ใช้ Doi plot + LFK index แทน Egger ตามคำแนะนำสำหรับสัดส่วน และ GRADE จะแนะนำให้ลดระดับเฉพาะเมื่อ asymmetry รุนแรง (|LFK| > 2)
Methods CopyWe combined the risk ratios from 9 studies using a random-effects meta-analysis, because clinical and methodological differences between studies make a single common effect implausible … Between-study variance (τ²) was estimated with the restricted maximum-likelihood (REML) estimator, and the confidence interval for the pooled effect was calculated using the Knapp–Hartung adjustment with its ad hoc variance correction … All analyses were performed in R with the meta package, version 8.3-0 (Balduzzi, Rücker & Schwarzer, 2019).
Results CopyAcross 9 studies (total N = 991), the pooled risk ratio was 0.15 (95% CI 0.07 to 0.35). Between-study heterogeneity was low (I² = 0%, τ² = 0.000, Q-test p = 0.491) … The pooled effect is shown in the forest plot (Figure 1) …
PRISMA items MetaMate cannot know — yours to complete: 13a which studies were eligible · 20a characteristics and risk of bias of the included studies
Your data never leaves your device — MetaMate loads the R engine into the browser, so extracted study data stays private
The first visit downloads about 70 MB of tooling (allow 1–2 minutes); later visits are fast because the browser keeps a copy · Stuck on a step? Contact the team on LINE OA: @pureyo
A Prepare data→B Upload→C Fit the model→D Build the report in 7 steps→E Export
A
Prepare your data from the template
Done once in Excel — to try the tool before preparing real data, skip to section B and press "Try an example"
1.Start from your research question, not the statistics — MetaMate accepts 4 kinds of data; pick the one that matches what you extracted
metamate.pureyo.cloud
What does your data compare?
Two groups on a numbere.g. blood pressure, length of stay, a score — treatment vs control (mean, SD, n per group)
›
Two groups on a yes/no outcomee.g. did the fracture heal, did the infection occur — event counts and group sizes
used in this guide
A single proportione.g. prevalence, complication rate — how many out of how many
›
I already have effect sizesYou have HR / OR / log-effects and SEs from elsewhere and just want pooling
›
This guide uses the binary example built into the app: non-union after clavicle fracture (ORIF vs Conservative, 9 studies)
2.Press "Download the template first" and fill it in Excel under the given column headers. Do not rename the headers — MetaMate uses them to map your columns automatically
metamate-binary-template.csv — Excel
study
events_treatment
total_treatment
events_control
total_control
risk_of_bias
mean_age
COTS
2
62
7
49
low
33.5
Mirzatolooei
1
26
1
24
low
35.6
Virtanen
0
26
6
25
high
37.0
Robinson
1
86
16
92
high
32.4
…
Yellow columns = optional moderators. Not required, but if present they power subgroup analysis and meta-regression in section D · one row per study · leave blanks empty — MetaMate will flag them
💡 Headers for the other data kinds — continuous: mean_treatment, sd_treatment, n_treatment, mean_control, sd_control, n_control · prevalence: cases, total · generic: effect, se — a ratio (HR / OR / RR / IRR) goes in on the log scale, and in the workspace you say which ratio it is (Ratio measure); left unspecified, the figures say "Ratio" and the write-up stays neutral · save as .xlsx or .csv
B
Upload and confirm the columns
The Data intake page checks three things: can the file be read · do the columns match · are the numbers complete
1.Go to https://metamate.pureyo.cloud and press "Upload my data", then pick your data type (section A, step 1) to open the Data intake page — or press "Try an example" to look around first (no file needed)
metamate.pureyo.cloud
MetaMate
Meta-analysis could not be simpler. · Upload. Analyse. Review. Draft.
⬆ Upload my data▶ Try an example
Free with a Pureyo account — your data stays on this device
2.Drop your Excel/CSV file into the Upload box — columns are mapped automatically and the data is validated on the spot
metamate.pureyo.cloud/intake
1Upload
Drop your Excel or CSV hereor click to browse · stays on your device
📄 my-data.xlsx loaded — 9 rows, 7 columns
2Column mapping
✨ We found all your columns. Your headers matched the template — nothing to do here.
study ▾✓ Study label
events_treatment ▾✓ Events (treatment)
total_treatment ▾✓ Total (treatment)
events_control ▾✓ Events (control)
total_control ▾✓ Total (control)
3Validation
✓ 9 studies included. All mapped columns are numeric and complete.
4Label your groups
Treatment
Control
→ Enter workspace
If your headers differ from the template you will see "Confirm the highlighted columns below" — pick the right column from each dropdown · green = passes, gold = kept with a note, red = that row is left out (the run never stops)
3.Name your groups under Label your groups (the names appear in the forest plot, the study table and the R script), then press "Enter workspace"
Group names can be changed later in the workspace's Analysis console
C
Fit the model
The workspace has 3 tabs: Data (your table) · Analyses (analysis and report) · Plots (figure editor)
1.On the Data tab, check the table once more, then press "Run" at the top left — the first run downloads and unpacks R (~70 MB); allow 1–2 minutes
Unpacking the R library…almost there — happens only on the first run
#
study
events_treatment
total_treatment
events_control
total_control
risk_of_bias
1
COTS
2
62
7
49
low
2
Mirzatolooei
1
26
1
24
low
3
Virtanen
0
26
6
25
high
● Working…webR not yet cachedFilters 0
The status bar at the bottom changes to ● Ready · webR ready (cached) when the engine is up — later runs take seconds · You can edit numbers directly in the table (click a cell) and press Run again
2.MetaMate switches to the Analyses tab by itself — the Analysis console on the left holds settings and steps; the report on the right fills up box by box
💡 Defaults already set for you (following standard guidance): random-effects as the headline model (the common effect is shown for comparison) · τ² by REML · Knapp–Hartung confidence interval with its ad hoc variance correction (never narrower than the classic interval) · 95% prediction interval reported · binary data: common effect by Mantel–Haenszel (or Peto for OR, if you choose it), random effects by inverse variance; a study with a zero cell gets the R meta package's default 0.5 correction, and a study with no events in either arm is left out of RR/OR — marked "excluded" in the study table and counted in the write-up · You can change the effect measure (RR/OR/RD) or edit the Model specification, but you must press Re-fit model, and the existing report is cleared
D
Build the report step by step (Guided steps 1–7)
Below the console sit the GUIDED STEPS. Work through 1 → 7; each step adds a "box" to the report on the right — use the up / down arrows on a box to reorder it, or ✕ to remove it
1.Press "Generate pooled effect" — you get the per-study table, the pooled estimate with CI and prediction interval, and a plain-language reading of the result
metamate.pureyo.cloud/workspace
Guided steps
1Generate pooled effect⌄
Start here — the pooled estimate unlocks the rest.
▷ Generate pooled effect
2Forest plot›
3Subgroup / meta-regression›
4Sensitivity analysis›
5Publication bias›
6GRADE certainty›
7Write-up›
1Pooled effect
Study
Treat
Control
RR [95% CI]
Wt
COTS
2/62
7/49
0.23 [0.05, 1.04]
20.4%
Robinson
1/86
16/92
0.07 [0.01, 0.49]
11.9%
Woltz
2/75
15/58
0.10 [0.02, 0.43]
23.1%
… 6 more
Pooled (random effects)
0.15 [0.07, 0.35]
100%
STUDIES 9PARTICIPANTS 991I² 0% (low)
Combining 9 studies, the average risk ratio was 0.15. The 95% CI (0.07 to 0.35) does not include 1 … Heterogeneity was low (I² = 0%) …
Just short of publication-bias testing You have 9 studies; funnel-plot tests need at least 10 to be reliable.
The grey boxes under the table are the automatic advisor: what to check next, e.g. high heterogeneity, zero-event studies, few studies — read them before moving on
2.Forest plot — choose the layout of your target journal (Default / JAMA / RevMan5 / BMJ), then press "Generate forest plot"
metamate.pureyo.cloud/workspace
✓Generate pooled effect›
2Forest plot⌄
Choose layout
DefaultJAMARevMan5BMJ
▷ Generate forest plot
Figure 1Forest plot — JAMA
Download PNGEdit in editor
Labels, axes, weights and PNG / vector PDF / SVG export live on the Plots tab ("Edit in editor" under the figure) · the subgroup and sensitivity forests you make next follow the same layout
3.Subgroup / meta-regression — pick a moderator column and press "Run subgroup analysis" (categorical, e.g. risk_of_bias) or "Run meta-regression" (continuous, e.g. mean_age)
Available only when your file has extra columns (section A, step 2) · MetaMate guesses each variable's type; change it on the Data tab → Variables panel
4.Sensitivity analysis — 4 kinds: Leave-one-out (drop each study in turn) · Cumulative (add studies one at a time in order) · Drapery · Exclude studies (drop by a condition, e.g. high risk of bias), then press "Run sensitivity" ("Run exclusion sensitivity" for Exclude studies)
5.Publication bias — press "Assess publication bias" for a funnel plot, Peters / Begg / Egger tests and trim-and-fill
metamate.pureyo.cloud/workspace
Figure 5Publication bias
⚠ Underpowered: publication-bias tests are unreliable with fewer than 10 studies.
Asymmetry test
Statistic
p
Peters Cochrane
2.22
0.062
Begg
0.42
0.677
Egger
0.36
0.729
Peters (recommended): p = 0.062 (< 0.10, the usual threshold for these low-power tests) — possible small-study effects. · Trim-and-fill (what-if) No studies were imputed — the adjusted estimate matches the original.
A test is read as a sign of small-study effects when p < 0.10 (the usual threshold for these low-power tests), so Peters' p = 0.062 above is flagged · With fewer than 10 studies the tests still run, but carry an "Underpowered" label in the report and in the write-up, and GRADE does not suggest a downgrade from them · prevalence data uses a Doi plot + LFK index instead of Egger, as recommended for proportions; GRADE suggests a downgrade only for major asymmetry (|LFK| > 2)
6.GRADE certainty — answer one domain at a time (design → risk of bias → inconsistency → indirectness → imprecision → publication bias); MetaMate pre-fills a suggestion from your data. Finish by pressing "Add Summary of Findings"
metamate.pureyo.cloud/workspace
6GRADE certainty⌄
✓23456Certainty ⊕⊕⊕⊝Moderate
DOMAIN 1/5
Risk of bias
What MetaMate found 5 of 9 studies are at high/unclear risk of bias — consider downgrading.
No downgradeSerious −1Very serious −2
‹ BackAccept & continue ›
⚠️ The GRADE rating enters the write-up only when you press "Add Summary of Findings" — just opening the step has no effect · If you remove the GRADE box from the report, that sentence disappears from the write-up too, and MetaMate goes back to flagging that certainty has not been rated (PRISMA 15/22)
7.Write-up — press "Generate write-up" for Methods, Results and Figure legends aligned with PRISMA 2020, summarising everything that is in the report at that moment
metamate.pureyo.cloud/workspace
Write-up
Methods CopyWe combined the risk ratios from 9 studies using a random-effects meta-analysis, because clinical and methodological differences between studies make a single common effect implausible … Between-study variance (τ²) was estimated with the restricted maximum-likelihood (REML) estimator, and the confidence interval for the pooled effect was calculated using the Knapp–Hartung adjustment with its ad hoc variance correction … All analyses were performed in R with the meta package, version 8.3-0 (Balduzzi, Rücker & Schwarzer, 2019).
Results CopyAcross 9 studies (total N = 991), the pooled risk ratio was 0.15 (95% CI 0.07 to 0.35). Between-study heterogeneity was low (I² = 0%, τ² = 0.000, Q-test p = 0.491) … The pooled effect is shown in the forest plot (Figure 1) …
PRISMA items MetaMate cannot know — yours to complete: 13a which studies were eligible · 20a characteristics and risk of bias of the included studies
After adding more analyses, press Generate write-up again to refresh it · the write-up is always in English (submission-ready) even when the interface is set to Thai · every number in it comes from the computed results — nothing is invented
E
Export and keep your work
Everything exports from the Export button at the top right — every file is generated on your own device
1.Press "Export" (the green button at the top right) and pick what you need
metamate.pureyo.cloud/workspace — Export & share
COPY BLOCKS
Methods paragraph Copypaste straight into your manuscript
Results paragraph Copy
Plain-language description Copyfor explaining the result to a lay audience
EXPORT
Each figure
Forest plot · PNGPDF vectorSVG
Reproducibility
R script (.R)Data table (CSV)
Whole report
Markdown (.md)HTML (.html)Print / PDF
💡 Need a Word file? Open R code on the ribbon and download the R Markdown report — knitting it in R gives a .docx with the figures · PDF vector / SVG are the right formats for journal submission (crisp at any size) · the R script reproduces every result in ordinary R (meta package)
2.Keep your work — press "Save project" on the Data tab and reopen it later from the Projects menu (or "Restore your last analysis" on the landing page)
Projects are stored in this browser only, not on a server — clearing site data or switching devices means they will not be there. Always export the R script and the Data table (CSV) as well
?
Frequently asked questions
Do I need to sign up or sign in?
You sign in with your Pureyo account (the Google account you use for Pureyo) before you bring in data or run an analysis. It is free. If you are already signed in to another Pureyo app, MetaMate opens without asking again. The home page, Methods and the documentation are open without signing in.
Is my uploaded data safe? Who can see it?
Nobody — the file never leaves your device. MetaMate loads the R engine (webR) into the browser and does all the work there. Signing in with your Pureyo account does not upload your data: MetaMate records only that you signed in and how much you use it (how many analyses, how many projects and their size). Administrators cannot see your projects.
Why is the first load slow?
The first visit downloads R and the meta package (about 70 MB) and unpacks them — 1–2 minutes depending on your connection. The browser keeps a copy, so later visits take seconds. If it hangs unusually long, open the ⚙ menu → "Clear engine cache" → "Clear cache & reload".
It says "This plot could not be drawn (the numbers above are unaffected)"
The numbers are correct and usable straight away. Usually the meta package itself cannot draw that plot for these data — for example a bubble plot while a study is left out of pooling (no events in either arm), or a drapery plot when a study's proportion is 0% or 100%. That figure is simply left out: it gets no figure number and the write-up does not cite it. Only when every plot is missing is it a loading problem — reload the page (or clear this site's cached data) and try again.
Fewer than 10 studies — can I still assess publication bias?
Yes, MetaMate runs it, but labels it "Underpowered" in the report and the write-up, because funnel-plot tests have low power when k < 10 (Cochrane guidance). Interpret with care.
Some studies have zero events in one arm — do I need to do anything?
Nothing to switch on. Following the defaults of the R meta package, such a study gets 0.5 added to its counts so it can be pooled (the Peto odds ratio needs no correction). A study with no events in either arm is left out of risk-ratio and odds-ratio analyses, but stays in for the risk difference. MetaMate reports how many studies were corrected and how many were left out, so you can state both in your Methods.
Can I switch the interface to Thai?
Yes: ⚙ → Language. The write-up (Methods / Results) and the R script stay in English, because they are outputs for submission.
Do I need to know R?
No — every step is a button. If you want to inspect or reproduce the analysis, press "R code" on the ribbon to see exactly the R code MetaMate ran, and download it as .R or R Markdown.
Does it work on a phone or iPad?
Yes — the console stacks above the report. The first 70 MB download and plot drawing are slower than on a computer, so a computer is recommended for real work.