Migrating from STK Cloud: Free Alternatives for Link Budget and Orbit Analysis
Ansys is sunsetting STK Cloud in March 2026. Here are the free open-source replacements for the two things it did best — ITU-R link budgets and orbital pass prediction.
Contents
- What's happening
- The two things STK Cloud did best
- Replacement #1: Link budget
- What to preserve when you migrate
- Built-in cubesat presets
- For programmatic access
- Replacement #2: Orbit propagation and pass prediction
- Quick passes for a known satellite
- Full SGP4 scripting
- What STK Cloud did that free tools don't replicate
- The 2026 migration checklist
What's happening
Ansys announced that STK Cloud will be sunset on December 31, 2025, with paid subscriptions winding down through March 1, 2026. If you've been using STK Cloud for link budget or orbit propagation work — especially on a startup budget where a full desktop STK license isn't practical — you need a migration plan.
The good news: STK Cloud's two most-used capabilities have solid free replacements. You just have to split them across two tools, because the monolithic "everything in one browser tab" model was part of what STK Cloud charged for.
Here's how to reproduce what you were doing.
The two things STK Cloud did best
- Link budget with ITU-R propagation models — rain fade, gaseous absorption, cloud attenuation, scintillation, Monte Carlo over uncertainty.
- Orbit propagation — SGP4/TLE-driven pass schedules, elevation timelines, Doppler curves, slant range vs. time.
Replacement #1: Link budget
Use the rftools.io Satellite Link Budget Analyzer. It implements the same ITU-R recommendations STK uses under the hood:
- P.618-13 — rain attenuation for Earth-space slant paths
- P.676-13 — gaseous absorption (O2 + H2O, Annex 2 approximation)
- P.840-8 — cloud attenuation (liquid water path approximation)
- P.838-3 — specific rain attenuation coefficients
- P.530-18 — terrestrial multipath fading
What to preserve when you migrate
If you're moving scenarios out of STK Cloud, capture these inputs — they map 1:1 to rftools:
| STK Cloud field | rftools input |
|---|---|
| Transmitter EIRP (dBW) | EIRP (dBW) |
| Receiver G/T | G/T (dB/K) |
| Frequency | Frequency (GHz) |
| Slant range (or orbit altitude) | Path Distance (km) |
| Elevation angle | Elevation Angle (°) |
| Rain zone / station latitude | Site Latitude |
| Modulation + code rate | Modulation + Required Eb/N0 |
| Symbol/data rate | Data Rate (bps) |
| Target availability | Target Availability (%) |
Built-in cubesat presets
The tool ships with presets that match the scenarios most STK Cloud cubesat users ran:
- Amateur CubeSat (UHF, AMSAT/SatNOGS) — 437 MHz, 9600 baud BPSK, omni dipole ground
- LoRa IoT CubeSat (sub-GHz ISM) — 868 MHz, low-power LPWAN
- LEO S-band telemetry (TT&C) — 2.25 GHz, QPSK 2 Mbps
- LEO X-band EO payload downlink — 8.2 GHz, 150 Mbps 8-PSK
- GEO Broadcast (Ku-band) — 12.5 GHz QPSK
- LEO Ka-band HTS user terminal — 20 GHz 16-QAM
- 5G NTN S-band (3GPP Rel-17)
- Terrestrial Microwave backhaul — 6 GHz, 99.99% availability
For programmatic access
If you need to script link-budget sweeps (parameter studies, sensitivity analysis, CI integration), use ITU-Rpy directly. It's the open-source reference implementation of the ITU-R recommendations and is validated against the ITU's own test vectors. Our backend aligns with it — you can use both interchangeably.
import itur
import itur.models as m
# Ka-band, 35° elevation, temperate maritime
f_ghz = 20.0
el = 35.0
lat = 51.5 # London
p = 0.01 # 0.01% of the year
R_001 = m.itu837.rainfall_rate(lat, 0.0, p=p)
A_rain = itur.atmospheric_attenuation_slant_path(
lat=lat, lon=0.0, f=f_ghz * itur.u.GHz, el=el,
p=p, D=0.6 * itur.u.m, hs=0 * itur.u.km,
)
print(f"Total slant-path attenuation: {A_rain:.2f}")
Replacement #2: Orbit propagation and pass prediction
For SGP4-driven pass schedules, Doppler curves, and slant-range timelines, you have two tiers:
Quick passes for a known satellite
Use our Satellite Pass Predictor. It pulls live data from the N2YO TLE catalog for 25 curated amateur/weather/APRS satellites, computes slant range, FSPL, Doppler shift, and atmospheric loss per pass. This replaces STK Cloud's "click-a-satellite, show-me-the-next-passes" UX for the most common cubesat use cases.
Full SGP4 scripting
For anything else — custom TLEs, arbitrary epochs, long-horizon planning, constellation analysis — use Skyfield in Python:
from skyfield.api import load, wgs84
ts = load.timescale()
sats = load.tle_file('https://celestrak.org/NORAD/elements/gp.php?GROUP=active&FORMAT=tle')
isoss = {s.name: s for s in sats}
iss = isoss['ISS (ZARYA)']
# Ground station in Boulder, CO
gs = wgs84.latlon(40.0150, -105.2705, 1624)
t0 = ts.utc(2026, 4, 29)
t1 = ts.utc(2026, 4, 30)
t, events = iss.find_events(gs, t0, t1, altitude_degrees=10.0)
for ti, ev in zip(t, events):
print(ti.utc_iso(), ['rise', 'culminate', 'set'][ev])
Skyfield is the most widely-used open-source successor to the old PyEphem/python-sgp4 chain. It's what actual operational cubesat teams use for ground-station scheduling. NASA's GMAT (General Mission Analysis Tool) is the heavier open-source alternative for mission design — free, but complex.
What STK Cloud did that free tools don't replicate
To set expectations honestly:
- 3D visualization — STK's 3D viewer is unmatched in the free ecosystem. Cesium.js + Celestrak TLEs can get you 80% of the way for presentation purposes, but nothing matches STK's native rendering.
- Integrated reporting — STK's scenario report generator is a single-click PDF. You'll assemble your report from the CSV export + Skyfield output yourself.
- Conjunction analysis — if you were using STK Cloud for debris/collision screening, you'll need a different tool (SOCRATES, or commercial conjunction services like LeoLabs or ExoAnalytic).
- RF interference modeling — STK's Comm/Radar modules include ITU-R noise temperature models. The free equivalent is ITU-Rpy plus manual calculation.
The 2026 migration checklist
- Before March 1, 2026: export all your saved scenarios from STK Cloud as CSV or PDF.
- Re-enter the most-used scenarios into the rftools Link Budget Analyzer and use Copy scenario URL to bookmark them.
- For orbit work: install Skyfield (
pip install skyfield) and build a small script that loads your satellite's current TLE and computes passes for your ground stations. - For integrated workflows: consider whether GMAT or a desktop STK seat is worth the complexity for your team.
- Document your new stack in your team's design-review template — replace the STK screenshots with rftools scenario URLs + Skyfield notebook links.
Related Articles
Sizing a 9600-baud UHF Downlink for a 3U CubeSat: Full Walkthrough
End-to-end link budget for an amateur-band 3U cubesat: EIRP, ground-station G/T, ITU-R propagation losses, and Monte Carlo availability. Uses the Amateur CubeSat preset.
Apr 29, 2026
RF EngineeringRF Power Density: Calculating EM Exposure
Master RF power density calculations with real-world examples and critical engineering insights for wireless and electromagnetic safety analysis.
Apr 29, 2026
PCB DesignPCB Impedance Control via Stackup Design
Learn how to calculate precise transmission line impedance across complex PCB stackups with expert techniques and real-world insights.
Apr 27, 2026