# Can scVI take as input SCT-normalized data?

**URL:** <https://discourse.scverse.org/t/can-scvi-take-as-input-sct-normalized-data/4042>\
**Category:** scvi-tools\
**Tags:** integration, scvi\
**Created:** [August 13, 2026, 1:34pm UTC](https://discourse.scverse.org/t/can-scvi-take-as-input-sct-normalized-data/4042 "2026-08-13T13:34:41Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![gboscagli](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.scverse.org/gboscagli/32/1644_2.png) [@gboscagli](https://discourse.scverse.org/u/gboscagli)\
**Post date:** [August 13, 2026, 1:34pm UTC](https://discourse.scverse.org/t/can-scvi-take-as-input-sct-normalized-data/4042/1 "2026-08-13T13:34:41Z")

</div>

Hi all,

i am trying to perform scVI integration on a merged dataset processed in R and normalized with scTransform. I want to use native Python implementation rather than Seurat wrapper, since i want to play around with the actual model, so I converted my object to AnnData.

Can I use scVI on SCT-corrected ‘counts’ (not log1p-ed) as input? There is little information around: Seurat purposely allows for SCT assays as scVI input ([see this PR](https://github.com/satijalab/seurat-wrappers/pull/228)), while reading from [here](https://discourse.scverse.org/t/understanding-scvi-integration-inside-r-with-seurat-v5-sctransform/3588/2) it seems the exact opposite.

---

<div class="post-metadata">

**Author:** ![ori-kron-wis](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.scverse.org/ori-kron-wis/32/1099_2.png) [@ori-kron-wis](https://discourse.scverse.org/u/ori-kron-wis)\
**Post date:** [August 16, 2026, 7:06am UTC](https://discourse.scverse.org/t/can-scvi-take-as-input-sct-normalized-data/4042/2 "2026-08-16T07:06:05Z")

</div>

Theoretically, it probably won’t break, but SCVI is not designed to have corrected SCT counts, but only to use raw counts for integration (there is an a priori assumption on the input data distribution, and SCVI does its own normalization). You can try, of course, and compare results.

The 2 sources do not really contradict each other; it’s just that the Seurat wrapper can’t really give what you need (raw counts) to you - it doesn’t mean that forcing it with its approx counts is the way to go.

---

<div class="post-metadata">

**Author:** ![gboscagli](https://yyz1.discourse-cdn.com/flex035/user_avatar/discourse.scverse.org/gboscagli/32/1644_2.png) [@gboscagli](https://discourse.scverse.org/u/gboscagli)\
**Post date:** [September 8, 2026, 8:53am UTC](https://discourse.scverse.org/t/can-scvi-take-as-input-sct-normalized-data/4042/3 "2026-09-08T08:53:42Z")

</div>

Hi @ori-kron-wis ,

Out of curiosity, I tried using scVI with SCT-corrected counts and it doesn’t break indeed. We are currently comparing performance to other integration methods, together with a scVI run on raw counts.

> The 2 sources do not really contradict each other; it’s just that the Seurat wrapper can’t really give what you need (raw counts) to you - it doesn’t mean that forcing it with its approx counts is the way to go.

I understand what you are saying. FYI, I also found this [issue](https://github.com/satijalab/seurat/issues/10184#issuecomment-3825513865) in which a contributor admittedly use scVI on SCT. However, regardless of what other people are doing out there, i think that the reason you gave me (unmet data distribution assumptions post-SCT) is enough to resort to the raw counts.
