guide

Why the Same Card Behaves Differently on Two Platforms

You exported a card, imported it somewhere else, and got a stranger. Five variables sit between your text and the reply, and only one of them travels with the file.

By Ash Kepler · Jul 25, 2026 · 6 min read

Affiliate disclosure: Some of the links in this article are affiliate links. We may earn a commission if you sign up for a platform through these links, at no additional cost to you. This doesn't influence our editorial verdicts. Full disclosure →

You exported the card, imported it somewhere else, and the character came out wrong. Same words, same fields, same everything you can see.

Which is the problem. The card is one of five things producing that reply, and it is the only one that moved.

The five variables

| Variable | Travels with the card? | Can you see it? | |---|---|---| | Your card text | Yes | Yes | | The model underneath | No | Usually not | | Context window size | No | Sometimes | | Platform system prompt | No | Almost never | | Sampling settings | No | Only on some platforms | | Content filtering | No | By reputation only |

One yes in that first column. Everything else about the reply is determined by the destination.

The model is the big one

Our model lookup table shows how much variation sits underneath these products. A proprietary in-house model, a bring-your-own-key setup running DeepSeek, and an undisclosed fine-tune are three genuinely different readers looking at identical text.

Prose quality varies most visibly. Instruction-following varies most consequentially. A card with eight behavioral rules works on a model that tracks eight rules and falls apart on one that tracks three, and nothing in the card tells you which you have.

There is also a floor problem. Lighter models hold boundaries worse in general, which is why puppeting, drift, and rule slippage cluster on the cheaper tiers. Our guide to why your companion writes your dialogue covers how that shows up.

The invisible system prompt

Every hosted platform wraps your card in its own instructions before sending anything to the model. Tone guidance, format expectations, safety framing, length preferences. You never see this text and you cannot edit it.

Two platforms running the identical model can therefore produce different characters from the identical card, purely because their wrappers differ. This is the variable people least suspect and it explains most of the confusing cases.

V2 and V3 cards can carry their own system_prompt field, and on open clients that field does real work. On hosted platforms it competes with a wrapper you cannot read. Our guide to card portability covers what the format actually carries.

Window size, and why bigger is not always better

Context windows vary enormously across this category, and your card is charged against that window on every turn. The same card leaves very different amounts of room for the conversation depending on where it lands, which our token ceiling guide works through with real numbers.

But a larger window on a weaker model is not an upgrade. Memory is one axis and instruction-following is another, and a platform can be generous on the first while being poor at the second. That combination produces the specific failure of a companion who remembers everything about you and still does not sound like herself.

Sampling settings

Temperature and related settings control how far from the most likely output the model is willing to go. Low settings produce consistent and flat. High settings produce varied and unstable.

Open clients expose this dial. Most consumer platforms do not, and they pick a default tuned for their median user rather than for your card. A character written to be unpredictable lands very differently on a platform running conservative defaults, and there is nothing in the card you can adjust to compensate. Our SillyTavern setup guide covers the route where you get the dial back.

Content policy, which is not a filter setting

Platform policy shapes output long before anything gets blocked. A service permitting adult content as policy generates differently from one that permits it grudgingly, even in scenes where nothing restricted is happening, because the model's sense of what is appropriate here is set by the wrapper and the tuning rather than by a gate at the end.

This is why cards written on permissive platforms often feel oddly restrained when imported elsewhere, with no refusal ever appearing. Our guide to whether jailbreaks still work covers why policy is the operative variable rather than prompt technique.

What to do about it

Treat an imported card as a draft. It is a starting point on the new platform, not a finished character. Expect to spend twenty minutes retuning.

Adjust rules first. If the character is not holding, cut the rule count before adding more. Fewer, sharper constraints survive weaker instruction-following, and our guide to what belongs in a character card covers which to keep.

Rebuild the opener for the destination. The opening message is the strongest behavioral signal in any chat, and it is worth rewriting for a new model rather than porting.

Recheck length. A card sized for a 9K window is oversized for a 4K one, and trimming it is usually a bigger improvement than any wording change.

Do not conclude the platform is bad from one card. You are testing six variables and changing one.

Where this leaves platform choice

If you want a card to behave predictably, the variables need to stop moving, which means holding the model and the settings yourself through Janitor AI with your own key or a self-hosted setup.

If you want a good experience without managing six variables, pick one platform and tune for it rather than chasing portability. Candy AI, CrushOn, and SpicyChat each produce good results from cards written for them specifically, which our best AI companion apps roundup covers in detail.

A card is not a character. It is instructions for building one, and the builder changes every time you move.

questions

Frequently asked

The card is only one of five variables producing a reply. The model, the context window size, the platform's hidden system prompt, the sampling settings, and any content filtering all differ between platforms, and none of them travel with the exported file.