Deploying Your Survey
Preparing to deploy
Before deploying your survey, make sure everything is working locally. You should have done the following:
- You have locally previewed your app.R file by clicking the “Run App” button in RStudio or in your R console running the code
shiny::runApp('app.R'). - You have set up a database connection to store survey responses (e.g. using Supabase) and have already stored the database credentials using the
sd_db_config()function (see the Storing Data page for details).
With these steps completed, you are ready to deploy your survey online.
Using a skill
If you are familiar with AI or agentive engineering, you can use this skill to expedite your server deployment. Simply install and invoke /surveydown-skill in your AI agent, and use it to deploy your survel. Visit the surveydown agentic skill page for more information.
Deploy by hand
A surveydown survey is a live Shiny application, not a static website, so it must be hosted on a service that can run R.
You may have deployed other Quarto documents on Quarto Pub before, but this service is only for static websites, so you SHOULD NOT use Quarto Pub (or other static hosts like GitHub Pages or Netlify) for your survey deployment.
We recommend three hosting platforms, all of which the agentic skill can deploy to automatically:
- Posit Connect Cloud — Posit’s managed home for R/Shiny apps and the recommended successor to the retiring shinyapps.io. The free plan allows 5 applications, and you publish straight from the rsconnect package.
- Hugging Face Spaces — runs your survey as a Docker Space on a clean URL. The free tier can run roughly 3 surveys at once.
- Google Cloud Run — runs each survey as its own container with no limit on the number of surveys. Idle services scale to zero (≈ $0 when unused), but a billing card is required on the project.
You can also install Posit Connect on your own server, which is the recommended approach for remaining compliant with any security protocols your organization requires.