You apply the same .cube file to both cameras, play the cut, and the shots do not match. The Canon reads warm and slightly green in the mids; the Sony reads cooler with a pushed contrast curve. This is not a bad LUT. It is a color science problem, and there is a specific fix for it.
Two cameras. One LUT. A cut that refuses to hold together. If you have run a two-camera shoot with a Canon R5 and a Sony A7S III, you already know the symptom: the moment you cut between the two angles, something shifts. Skin tones drift. Shadows land in a different place. The grade that looked unified on one camera looks applied on the other. People blame the LUT. The LUT is not the problem.
The problem is that Canon Log 3 and S-Log3/S-Gamut3.Cine are fundamentally different encoding systems with different gamma curves, different color primaries, and different white point assumptions. A LUT is a mathematical lookup table. It maps input values to output values. Feed it different input values from two different log formats and you will get different output. This is physics, not a defect.
Let us go through exactly what is different, what that difference looks like on scopes, and the correct node structure to neutralize it before your creative grade even touches the footage.
The Actual Color Science Difference
Canon Log 3 uses Canon's own wide-gamut color space, Canon Cinema Gamut (in Cinema modes) or a close variant when shooting on a mirrorless body like the R5 in C-Log 3 mode. The tone curve is relatively gentle in the shadows, rolls off highlights early, and keeps midtones in a narrow IRE band. On a parade scope, C-Log 3 skin tones typically sit around 35 to 42 IRE on a person lit to 0 EV.
S-Log3 paired with S-Gamut3.Cine (the Sony color space you should always use over full S-Gamut3 for narrative and event work) is a different animal. The shadow detail is aggressively encoded: shadows sit higher in the tone curve, around 7 to 10 IRE at black. Midtone skin values at 0 EV land closer to 41 to 48 IRE depending on the subject's tone. Highlight rolloff is gentler and extends further. The color primaries in S-Gamut3.Cine are mapped closer to BT.2020, which is a wider gamut than Canon Cinema Gamut, and crucially, the green primary sits in a slightly different position.
That last point is the one most people miss. The green channel separation is why a LUT will push Canon footage toward a slightly warmer, more olive midtone while the same LUT pushes Sony footage slightly cooler and more cyan. The LUT was built for one color science and is being asked to work across two. It cannot do that without help.
What This Looks Like in Resolve
Bring both clips into DaVinci Resolve. Put them side by side in a split-screen or use the gallery to compare stills. Apply nothing. On the parade scope, note where the midtones sit on each camera. Note the green channel relative to red and blue. The Sony will show more green-channel lift in shadows. The Canon will show the channels sitting tighter together, with a warmer red bias in the mids.
Now apply your LUT via a LUT node with no CST before it. Watch the parade. The Canon output will look passable if the LUT was built for Canon. The Sony output will look green-pushed and slightly desaturated in the reds. Or vice versa if the LUT was built for Sony. Either way, one of them is wrong.
The fix is a Color Space Transform on the way in, before the LUT, converting each camera's native log format to a common working space. Do not skip this step.
The Correct Node Structure
In Resolve's Color page, right-click a clip and set the Input Color Space to Bypass so Resolve is not doing any automatic transform. You are going to handle the transform explicitly in the node tree.
For both cameras, build this three-node serial structure:
- Node 1: CST In.
Color Space Transformnode. For the R5: Input Color Space =Canon Cinema Gamut, Input Gamma =Canon Log 3. For the A7S III: Input Color Space =S-Gamut3.Cine, Input Gamma =S-Log3. Output for both: Color Space =DaVinci Wide Gamut, Gamma =DaVinci Intermediate. This converts both cameras to the same working space. - Node 2: Creative LUT or Grade. Your
.cubefile or your manual grade lives here. Because both feeds are now in DWG/DI, the LUT sees identical encoded values for the same real-world scene. This is where matching happens. - Node 3: CST Out. Another
Color Space Transformnode. Input:DaVinci Wide Gamut / DaVinci Intermediate. Output: your delivery color space, typicallyRec.709 / Gamma 2.4orsRGBdepending on your destination.
If you are working in a managed project (ACES or DaVinci Color Managed), the project-level settings handle CST In and Out automatically. In that case, make sure each clip has the correct Input Color Space set in the clip attributes, and put your LUT on Node 1 with the project's transform doing the rest. Either way, the principle is the same: normalize first, grade second.
The Residual Mismatch After CST
Even after a correct CST, you will often see a residual difference. This is not a CST error. It comes from two sources:
White balance encoding. The R5 and A7S III encode white balance metadata differently, and more importantly, the way each sensor responds to mixed light sources (say, a golden-hour window in a Rajasthan haveli combined with tungsten practicals) will differ at the photosite level. CST normalizes the math; it does not change the physics of how each sensor captured the light.
Sensor metamerism. Two sensors responding to the same light source with the same color temperature will still produce slightly different RGB ratios because the spectral response curves of their photodiodes are different. Canon's sensor tends to produce slightly warmer greens and a more orange bias in the reds under tungsten. Sony's sensor is slightly more sensitive in the blue channel under the same conditions.
After your CST-In-LUT-CST-Out chain, do a secondary balance pass on whichever camera is the cutaway or B-roll camera. Use a neutral object in the frame (a white tablecloth, a concrete wall, a gray sherwani) and pull an HSL Qualifier on it. Keep the selection tight with a softness of 10 to 15. Use the Lift/Gamma/Gain wheels or a gentle Offset nudge to bring the neutral toward the primary camera's neutral. You typically do not need more than plus or minus 3 on any channel in the Offset wheel to close the gap.
The Positiva Bundle
Built for mixed-camera shoots: every LUT in the bundle is designed to sit inside a CST-in/CST-out node chain, so the same grade works correctly across Canon Log 3 and S-Log3 feeds without manual rebalancing on every cut.
A Practical Two-Camera Wedding Workflow
Take a typical North Indian wedding scenario: a main camera on the mandap (usually a locked-off R5 on a fluid head for the ceremony wide) and a roaming A7S III for the close reaction shots, the pandit's hands, the sacred fire, the vidaai tears. The light is a nightmare mix of sodium vapor house lights, rental LED panels at 3200K, open flame, and by late evening, whatever is bouncing off the sheer fabric overhead.
You cut the two cameras together. Without the CST chain, every reaction shot from the Sony looks like a different film stock from the ceremony wides on the Canon. With the CST chain, they sit inside the same tonal universe. The secondary balance pass on the Sony costs you maybe four minutes per scene in post. That is the trade.
One more practical note: if you are shooting in Canon's C-Log 3 on the R5 rather than Cinema EOS modes, confirm whether your R5 is recording with Canon Cinema Gamut or the standard R5 color space. On the EOS R5 mirrorless body shooting C-Log 3 to CFexpress, the color space is a specific Canon variant called BT.2020 (Canon Log 3) rather than full Cinema Gamut. In Resolve's CST node, use Canon Log 3 / BT.2020 as your input if that is your actual record setting. Picking the wrong gamut will introduce a slight red or green shift that will confuse you for an embarrassing amount of time.
Check this in-camera by going to Canon menu, shooting settings, Color Space, and noting whether it reads Cinema Gamut or BT.2020. Write it down on your camera report. It sounds tedious. It saves forty minutes of scope troubleshooting on a twelve-hour wedding edit.
Verifying Your Match on Scopes
Do not trust your eyes alone. After the CST chain and your secondary balance, pull identical stills from both cameras of a shot that contains: a neutral surface, a warm-skin subject, and a specular highlight. Open them in the Resolve gallery and use the Split Screen Viewer in wipe mode. Switch to the Parade scope.
Look at three things:
- The neutral surface should show all three channels within 2 to 3 IRE of each other on both cameras.
- The skin tones should sit at comparable IRE values and show a similar red-over-green-over-blue channel relationship on both cameras.
- The specular highlight should clip or roll off at a comparable value. If the Sony is clipping a full stop earlier than the Canon after your grade, your CST output node may be clipping highlight data. Use
DaVinci Intermediateas your working gamma (not a log-to-linear transform) to preserve the headroom.
This is not a five-minute job the first time you do it. It becomes a ten-minute job after you do it three times. Build a Power Grade in Resolve that stores the CST-in node for each camera as a pre-baked starting point. Apply it with one click at the start of each project and you will not think about this problem again at the macro level. The only variable that changes shoot to shoot is the residual white balance trim, and that is one Offset nudge in the secondary pass.
The R5 and the A7S III are both excellent cameras. Their color science differences are not a flaw. They are a known variable. Treat them like a known variable and your multi-camera cuts will hold.
For more on color space transform order in Resolve, see the post on CST-Then-LUT vs LUT-Then-CST. If you are also running a Sony FX3 in your kit alongside these two, the same node logic applies: see the FX3 vs FX6 breakdown for notes on how the FX3's color science sits relative to the A7S III. And if you want to browse LUT packs designed for this kind of CST-normalized workflow, the full library is at luts.html.