Blackboard vs Canvas LMS

Blackboard Learn SaaS suits institutions that want the vendor to run hosting and support. Self-hosted Canvas LMS under AGPLv3 suits teams that need data in their own infrastructure and can carry upgrades and community-only support.

On this page

Blackboard or self-hosted Canvas LMS: which fits your institution

Blackboard Learn SaaS fits institutions that want vendor-run hosting and vendor support, and self-hosted Canvas fits institutions that need control of their data and code. Start with the trigger for your review, whether it is a renewal, the end of Blackboard's managed and self-hosted options, or a data residency rule that requires the LMS to sit in your own environment. That trigger tells you which side of the trade-off matters more before you compare features.

Three things decide the answer. The first is staff capacity: a self-hosted Canvas install is a production system that you patch, back up, monitor and upgrade. The Canvas Production Start guide lists Ubuntu 22.04 LTS, PostgreSQL 14 or later, Redis 6.x or above, Apache with Passenger, a background jobs daemon and an outgoing SMTP server, and it recommends at least 8GB of RAM, so confirm that your team can own each of those components. The second is the support model you accept: the same guide directs installation problems to the community mailing list or IRC channel rather than to Instructure support, so decide whether a community channel or a paid partner is an acceptable escalation path for a course-day outage.

The third is how much course history you must carry over. Canvas's Course Import Tool accepts Blackboard 6, 7, 8, 9 and Ultra exports, but import is only the start. Ask Blackboard's vendor or your own admins for an inventory of active, archived and records-retention courses, then test a sample of each type in a staging Canvas instance. Record what imports cleanly and what needs rebuilding, such as gradebook logic and LTI connections, before you commit to a hosting model.

Which option fits which situation

This table matches common buying situations to the option that usually fits better, with the reason and the condition under which the other option wins. Read each row against your own constraints, since most institutions have a mix of them. The main takeaway is that self-hosted Canvas suits teams with in-house operations capacity and a need to keep data on their own infrastructure, while Blackboard SaaS suits teams that want the vendor to run the platform.

SituationBetter fitWhy and when the other option wins
Preference for a vendor-managed SaaS serviceBlackboard Learn SaaSThe vendor runs hosting, patching and upgrades. Self-hosted Canvas wins if the institution already has an operations team willing to own those tasks.
Requirement to keep student data on premisesSelf-hosted Canvas LMSCanvas code runs in your own data center or cloud account. Blackboard's managed and self-hosted options have ended, so SaaS is the only Blackboard path; confirm your contract's data location terms.
Limited in-house operations staffBlackboard Learn SaaSSelf-hosted Canvas needs Ruby, PostgreSQL, Redis, Apache with Passenger, a background job daemon and SMTP, all maintained by your team. Self-hosting only makes sense with capable staff or a partner.
Large existing Blackboard Ultra course libraryBlackboard Learn SaaS for short termCanvas's importer covers Blackboard 6 to 9 and Ultra exports, but grading, quizzes and LTI links still need checking after import. Keep Blackboard running while you verify courses.
Long-term archive retention for recordsSelf-hosted Canvas LMSArchives you control avoid depending on a vendor's export window. Confirm with your records office which archive formats and student data they accept before choosing.
Existing relationship with InstructureInstructure hosted CanvasAn Instructure-hosted contract keeps support and upgrades with the vendor. Self-hosted Canvas, which has community support only, wins when you want the code and infrastructure in your own hands.
Need for vendor support contract on the LMSBlackboard Learn SaaSSelf-hosted Canvas support comes from the community mailing list and IRC channel. Teams that need a contractual support path should price a partner retainer or choose a hosted service.
Open-source license requirementSelf-hosted Canvas LMSCanvas is released under AGPLv3, so you can inspect and modify the code. Review AGPLv3 obligations with legal if you plan to offer modified Canvas to users over a network.

Where your course data lives under each model

Moving from Blackboard Learn SaaS to self-hosted Canvas LMS changes who holds the course data, who runs the identity connections and who produces the compliance evidence. The four cards below set out those responsibilities so you can check each one before you choose a path.

Blackboard Learn SaaS data location

With Blackboard Learn SaaS, Anthology operates the hosting environment, so the physical location, backup regions and retention of course content, submissions and grades are set by the vendor's contract and documentation. Your institution controls what it configures inside the tenant, not the underlying infrastructure. Ask for the named data center regions, the backup and deletion schedule, and any subprocessors that touch student records. Confirm these in writing, because they decide where your records sit when a retention or residency question arises.

Self-hosted Canvas in your infrastructure

Self-hosted Canvas LMS runs in your cloud account or data center, so course content, submissions and grades stay on servers you administer. The stack includes PostgreSQL, Redis, Apache with Passenger, a background job daemon and outgoing SMTP, and you own its backups, patching and monitoring. Confirm where the database, file storage and mail relay sit, and who holds administrator access. The Production Start guide is the starting point for that design, but it is community-maintained documentation rather than a vendor support commitment.

Identity and SSO responsibilities

Course access depends on how learners and staff sign in. On Blackboard SaaS, the vendor hosts the login endpoints and your identity provider federates with them. On self-hosted Canvas, your team configures the authentication connections, LTI tool trust, SIS feeds and account provisioning, and rotates the credentials behind them. Map every sign-in path, including LTI tools and third-party publishers, and decide who removes leavers' access. Document these connections before cutover, because a broken SSO link can lock out an entire term.

Compliance evidence and attestations

DeployOpen prepares controls, configurations and evidence for compliance assessments, but it does not issue audit reports, attestations or certifications. Independent auditors and certification bodies produce those outcomes. For Blackboard SaaS, request the vendor's current attestation reports and the scope they cover, and confirm whether they include the modules you use. For self-hosted Canvas, the controls for access, logging, backup and change management become your evidence to collect, and an auditor will test them directly.

What running Canvas LMS yourself requires

Running self-hosted Canvas LMS means building and operating a full application stack, and the project's own Production Start guide lists the parts. The guide was written and tested on Ubuntu 22.04 LTS, and it calls for Ruby 3.4.1 or later as of the 2025-07-02 release, PostgreSQL 14 or later since the stable/2024-11-20 release, and Redis 6.x or above for caching and OAuth2. The web tier runs Apache with Passenger, a background daemon executes automated jobs, and an outgoing SMTP server sends mail. The guide recommends at least 8GB of RAM. Before you commit, have your platform team confirm that these versions match your approved operating system and database standards, and that the server sizing fits your expected concurrent users. Check the current requirements in the Canvas Production Start guide before you build, because the versions move with each release.

Each component is a separate thing to patch, monitor, back up and secure. The background job daemon matters most for day-to-day operation: grade passback, notifications and scheduled work all depend on it, so a stopped daemon can look like a working site with silent failures. Outgoing SMTP is also easy to overlook until password resets and course notices fail. Assign an owner to each component and write down who restores PostgreSQL, who renews TLS certificates and who watches the job queue. These are the recurring costs of hosting Canvas yourself, and they belong in your cost comparison alongside staff time for upgrades.

The support gap is the decision most likely to surprise buyers. The Production Start guide directs people with installation problems to the community mailing list or IRC channel rather than to Instructure support, because the self-hosted code has no vendor support contract behind it. Your institution will need either in-house engineers who can work through installation and upgrade issues with community help, or a paid implementation partner under a written scope. Ask any partner to state in writing who responds to a failed upgrade, how fast, and which environment they test against. Plan for that support cost before you choose self-hosting over the hosted option.

What each option costs over time

Blackboard Learn SaaS and self-hosted Canvas LMS spread cost across different parties, so the totals look nothing alike. Each card below names one component, whether it is one-time or recurring, what drives it, and what to request in a written quote before comparing the two.

Blackboard subscription and hosting

In the SaaS model, the subscription bundles hosting, platform upgrades and vendor-run operations, so most infrastructure cost is recurring and set by the contract. Blackboard's self-hosted and managed hosting options have closed, so there is no in-house hosting line to model. Ask the vendor which upgrades, environments, sandbox instances, storage allowances and integration licenses sit inside the subscription, how the price changes with user count, and what happens to pricing at renewal. Those answers set the baseline every Canvas figure must be measured against.

Server, storage and database operations

Self-hosted Canvas moves hosting onto your team or a partner. The Production Start guide recommends at least 8GB of RAM, and the stack needs PostgreSQL 14 or later and Redis 6.x or above. These are recurring costs for compute, backups, storage growth from course files and submissions, and database administration. Cost rises with concurrent users, retained archives and the number of environments you keep for testing. Ask your infrastructure provider for a price per environment and a storage growth estimate based on your current LMS data volume.

SMTP and background job services

A production Canvas install depends on Apache with Passenger, a background daemon for automated jobs, and an outgoing SMTP server. Each is a component you run, patch and monitor, and each can fail in ways that stop notifications or scheduled work. SMTP is often a small fixed cost through an existing mail provider, but deliverability and sending limits belong in the cost review. Confirm whether your organization already has an SMTP relay that can carry course notifications, and who will own the job queue when it stalls.

Upgrade and testing labor

Canvas is released as dated tags, such as release/2026-05-20, and each upgrade needs a staging copy, regression testing of your integrations and a cutover window. This is recurring labor that scales with your release cadence and the number of LTI tools and SIS connections you run. Blackboard's SaaS model moves most of this work to the vendor, so the comparison turns on whether your staff or partner time costs less than that transfer. Ask for an estimate of hours per upgrade cycle, with the testing scope written out.

Staff or partner time

This is the largest variable in a self-hosted comparison. Running Canvas needs people who can administer Linux, PostgreSQL, Redis and the Rails application, and who can respond to incidents outside office hours. You can staff this internally, contract it to a partner on a fixed scope, or combine both. Partner cost is one-time for setup and recurring for retained support and upgrades. Request a written split of responsibilities so you can see which hours are fixed and which depend on incident volume.

Support channel and one-time migration

Canvas community support runs through the project mailing list and IRC channel, and the Production Start guide points installation problems there rather than to Instructure support. Paid support must come from a partner or a hosted provider, so budget for it as a recurring line if you need guaranteed response. Course migration is one-time: the Common Cartridge and Blackboard 6 to 9 and Ultra importers move much of the content, but grading, archives and integrations need manual rebuilding. Ask any partner for a fixed quote covering import testing, response times and what the migration excludes.

How a move from Blackboard to Canvas LMS works

The sequence turns a Blackboard Learn SaaS course catalog into a Canvas LMS instance in your own infrastructure, with each course checked after import and a records plan for archives that hold student data.

  1. Inventory courses, archives and integrations

    The institution lists every course to move, the terms and sections that must stay accessible, the Blackboard archives that hold submissions and grades, and every LTI tool, SIS feed and single sign-on connection that touches the LMS. Registrar, academic technology and records staff own this list. It is done when each course has an owner, a move decision (move, archive or retire) and a named integration owner.

  2. Run the Blackboard export for each course

    Course owners or administrators export each course from Blackboard Learn in a format the Canvas Course Import Tool accepts. Canvas supports Blackboard 6, 7, 8, 9 and Ultra exports, so the export type must match the source course view. Keep a copy of every export file in a controlled store. It is done when every in-scope course has an export file that has been checked for size and completeness.

  3. Import courses through Canvas's Course Import Tool

    Administrators or course builders run the Course Import Tool in the target Canvas instance and load each export. Canvas also accepts Common Cartridge ZIP or IMSCC files and Thin Common Cartridge files as module content, which helps when a course needs a different route. Record the import result for each course, including warnings. It is done when every course shows a completed import in the target instance with its warnings logged.

  4. Review what the import leaves out

    Course designers compare each imported course with its source. Check grading schemes, quiz banks, random question blocks, discussion threads, group settings, embedded media and links to other course content. Anything the import does not carry over goes onto a rebuild list with an owner. It is done when each course has a signed-off gap list and the rebuild items are assigned.

  5. Rebuild gradebooks, quizzes and assessments

    Instructors recreate gradebook structures, assessment settings and quiz logic that did not transfer, and confirm weighting and grading rules against the approved syllabus. Historic grades stay in the archive and are not re-entered into live courses unless the registrar directs it. It is done when each assessment in a course matches its approved design and a test student's grade calculation matches the expected result.

  6. Reconnect LTI tools, the SIS and sign-in

    Integration engineers register each LTI tool in Canvas, configure the SIS roster feed and confirm the sign-in path for staff and students. Each connection is tested with a test account before any live user relies on it. Confirm the Canvas instance's PostgreSQL, Redis, Apache with Passenger, background job and outgoing SMTP setup against the Canvas Production Start guide, since these run in your own infrastructure. It is done when every integration has a passing test record and an operations owner.

  7. Test, train and cut over

    Pilot courses are run with faculty and students, issues are logged and fixed, and support staff are trained on the Canvas environment, which has community support only. The cutover date, the freeze on Blackboard edits and the rollback plan are agreed in writing. It is done when pilot sign-off exists, the cutover checklist is complete and the operations team has accepted support responsibility.

  8. Set a records retention plan for archives

    Blackboard archives that contain student submissions, grades or attendance need a retention schedule set by the records office and legal counsel before they are moved, stored or deleted. Decide where archives live, who can access them, how long they are kept and how they are destroyed. Confirm the requirements with your records office rather than assuming a default. It is done when a signed retention schedule covers every archive and access is limited to named roles.

What the Canvas importer does not carry across

Treat the Canvas Course Import Tool as a content move, not a full migration. Instructure's guides describe importing content from Blackboard 6, 7, 8, 9 and Ultra exports, and Thin Common Cartridge files as module content, but the scope of what arrives is what you must verify. Before you plan a cutover, confirm with Instructure's import documentation, starting with the Blackboard import guide, exactly which course components are carried across for your Blackboard version and which are excluded.

Build a test course for each course type you run, such as a first-year lecture, a lab section with graded assignments and a course with an external tool link. Import a copy of each export, then compare the result against the source course item by item: modules, pages, files, assignments, quizzes, discussion topics, rubrics, gradebook settings and any embedded media. Record every gap in a shared list with the course owner, and mark whether it can be rebuilt by hand, needs a vendor or support answer, or blocks the move.

Plan the rebuild work that follows import. Ask your Canvas administrators and instructional designers to confirm how LTI tool placements, enrollment and roster links, grade passback and single sign-on will be reconnected in your own installation, because none of these depend on the course file. Also decide who owns the gradebook reconciliation for the first term. Self-hosted Canvas support comes from the community mailing list or IRC channel rather than Instructure support, so write down which gaps you expect your own team or a partner to resolve.

Questions buyers ask before choosing Canvas LMS over Blackboard

How much effort does a self-hosted Canvas LMS install take?

A self-hosted Canvas install is a multi-component build, and the effort depends on how many parts your team already runs. The Production Start guide, written and tested on Ubuntu 22.04 LTS, describes Apache with Passenger, a background daemon for automated jobs, an outgoing SMTP server, PostgreSQL 14 or later, and Redis 6.x or above for caching and OAuth2. It recommends at least 8GB of RAM for the server. The main drivers are how many of those services you already operate, how much hardening and monitoring you add, and how often you patch Ruby and the application. Ask your team to inventory these components against your existing platform standards before estimating.

Can our team install Canvas without an implementation partner?

Some teams can, especially those with strong Ruby on Rails, Linux and PostgreSQL experience, but the guide assumes hands-on operator skill. The Production Start guide is community-maintained, so every step, from the database setup to the mail relay, is your team's responsibility to verify against your environment. Decide early whether you have a named engineer who can own the install, the upgrades and the on-call rotation. If not, a partner can plan, implement and document the deployment on a fixed scope, with the written scope and deliverables agreed before work starts.

How long does migrating Blackboard courses to Canvas take?

No fixed duration applies to every institution, so treat any single figure with caution. The pace is set by the volume and age of the courses, how many Blackboard 6 to 9 or Ultra exports you need to import, and how much content needs manual rebuilding after import. Canvas's Course Import Tool accepts Blackboard exports and Common Cartridge files, but LTI tools, integrations with your student information system, gradebook configuration and assessments often need checking course by course. Start with an inventory of active courses and a pilot batch so your team can measure the actual rework before committing to a schedule.

What does support look like without Instructure support?

Self-hosted Canvas relies on community support rather than Instructure's support contracts. The Production Start guide directs installation problems to the community mailing list or IRC channel, so you should not expect a vendor ticket queue. In practice, support means your internal team, community forums and any external partner you retain. Ask a partner whether they provide ongoing support, upgrades and continuous testing as a retainer, and confirm the response expectations in writing. Also plan for internal runbooks covering incident response, backups and restores, because those responsibilities move to you.

Do AGPLv3 obligations apply if we modify Canvas code?

Canvas is released under the AGPLv3 license, and the obligations of that license depend on how you modify and distribute the software. Running an unmodified copy for your own users is a different case from changing the code and offering the modified version to others over a network, which the AGPLv3 network clause addresses. Your legal counsel should review your intended use, including any custom plugins, integrations and hosting for partners or other institutions. Confirm the license terms in the repository's license file and keep a record of every local change so the position is clear if questions arise.

What skills and staff time does a self-hosted LMS need internally?

Your internal team needs ownership of the application, the database, the web and job tiers, the mail relay and the storage that holds course content. Expect ongoing work on upgrades from the dated release tags, security patching of the operating system, Ruby and PostgreSQL, backup verification, monitoring and capacity planning for peak periods such as enrollment and exams. Name a product owner who decides on upgrades and a platform engineer who runs them. Ask any partner to document these tasks in a runbook so knowledge does not sit with one person.

What should we ask for in a quote for a self-hosted Canvas project?

Ask for a written scope that lists the environments, the number of courses in the migration, the integrations to reconnect, and the hardening, backup and documentation deliverables. Request a separate line for the one-time work, such as installation, migration and testing, and a separate line for recurring work, such as upgrades, patching and support. Also ask what is excluded, how acceptance is measured, and how changes to scope are priced. Your quote should follow from that written scope, and you should compare it with the internal effort you identified above.

How DeployOpen helps evaluate, implement and migrate Canvas LMS

DeployOpen is a Chainscore Labs company that plans, implements, integrates, hardens, backs up, upgrades, documents and supports self-hosted open-source platforms inside the client's own infrastructure. For Blackboard vs Canvas LMS, we work from a written scope that separates the course migration from the operating model you will run afterward.

How we scope

  • Inventory which Blackboard course exports, archives and content types your institution needs to carry into Canvas
  • Confirm the target hosting: your cloud account, data center or air-gapped network, with the Canvas Production Start requirements in view
  • Agree the scope, deliverables and timeline in writing before work starts, since most engagements are fixed-scope
  • Identify LTI tools, single sign-on and SIS connections that must be rebuilt or validated after import

How we build

  • Install Canvas LMS with its PostgreSQL, Redis, Apache with Passenger, background job and SMTP components in your environment
  • Run test imports of Blackboard 6 to 9 and Ultra exports, and record which items import cleanly and which need manual rebuilding
  • Test assessments, gradebook behavior and integrations against your institution's acceptance criteria
  • Harden the stack and document configuration, access controls and evidence that supports your compliance assessments

How we hand over

  • Deliver runbooks for installation, upgrades, backups, restores and monitoring of the Canvas instance
  • Provide a migration report listing imported content, open issues and items your faculty must rebuild
  • Train your administrators and platform staff on the operating model they will own
  • Document the decisions taken, so auditors and internal reviewers can trace how the platform was configured

How we support

  • Offer ongoing support, upgrades and continuous testing as a retainer after handover
  • Plan Canvas upgrades and test them against your integrations before they reach students
  • Keep backup and restore procedures tested on a schedule agreed in your written scope
  • Confirm with your institution how community support and any commercial Canvas support contract will be handled

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.