Superior cloud hosting

Thousands of SME businesses are powered by UpCloud cloud servers around the world. For everything between smaller projects and major IaaS deployments, UpCloud is built to scale you forward. Get the 100% uptime SLA you deserve with the best price vs. performance on the market.

Contact us

Enterprise-level cloud servers for SMEs!

World's fastest cloud

Uniquely fast block storage

Our scalable MaxIOPS block storage provides 2x faster performance and reliability compared to industry-standard SSD cloud servers. Our SME business customers run their business-critical web applications on our enterprise-grade cloud servers and love us for our high performance, reliable service, and competitive prices

Reliable hosting for MSPs

UpCloud is ready to scale your managed hosting business forward! Let your customers enjoy the 100% uptime SLA, and benefit from the best price vs performance on the market. Our custom-built, performance-oriented cloud servers will vastly increase your hosting reliability and profits. Get in touch – and never worry about the infrastructure again.

Always secure, always available

Build production-grade environments with 24/7 customer support! We have eliminated risks by building UpCloud with an N+1 philosophy throughout our entire infrastructure. We give you 100% uptime SLA and a 50x payback for any downtime over 5 minutes. Our in-house Support team is available live 24/7 for our users.

24/7 support you'll love

We promise to take good care of you and your customers. With a 1m 55s average median response time and a 95% satisfaction rate, we provide probably the best support in the industry. We also offer custom onboarding and a dedicated account manager for our business customers.

Scalable and cost-effective

Scale your business forward! Instantly add CPUs or storage with a click. UpCloud also connects directly to any of your existing cloud infrastructure. Our flexible hosting is billed by the hour and you will only be billed for the hours you used. Get in touch with us at any time and we are happy to help you get started with UpCloud!

2-month free migration period

Don’t worry about the extra costs of migrating from a different cloud provider. During a 2-month free migration period, we will charge you no service costs. The offer is available to all new business customers whose infrastructure costs on UpCloud will exceed $500 per month.

Our versatile API

Designed for developers

Our easy-to-use control panel and API let you spend more time coding and less time managing your cloud servers. Together with the community, we develop and maintain a large library of open source API clients and tools.

View documentation

Easily integrate your app with our infrastructure

- hosts: localhost
  connection: local
  serial: 1
  gather_facts: no

  tasks:
    - name: Create upcloud server
      upcloud:
        state: present
        hostname: web1.example.com
        title: web1.example.com
        zone: uk-lon1
        plan: 1xCPU-1GB
        storage_devices:
            - { size: 25, os: Ubuntu 14.04 }
        user: root
        ssh_keys:
            - ssh-rsa AAAAB3NzaC1yc2EAA[...]ptshi44x [email protected]
            - ssh-dss AAAAB3NzaC1kc3MAA[...]VHRzAA== [email protected]
      register: upcloud_server

    - name: Wait for SSH to come up
      wait_for: host={{ upcloud_server.public_ip }} port=22 delay=5 timeout=320 state=started

    - name: tag the created server
      upcloud_tag:
        state: present
        uuid: "{{ upcloud_server.server.uuid }}"
        tags: [ webservers, london ]
resource "upcloud_server" "server1" {
    hostname = "terraform.example.com"
    zone = "nl-ams1"
    plan = "1xCPU-1GB"
    storage_devices = [
        {
            size = 25
            action = "clone"
            storage = "01000000-0000-4000-8000-000030080200"
            tier = "maxiops"
        }
    ]
    login {
        user = "root"
        keys = [
            "ssh-rsa public key xxx"
        ]
    }
}
{
   "variables": {
      "UPCLOUD_USERNAME": "{{ env `UPCLOUD_API_USER` }}",
      "UPCLOUD_PASSWORD": "{{ env `UPCLOUD_API_PASSWORD` }}"
   },
   "builders": [
      {
         "type": "upcloud",
         "username": "{{ user `UPCLOUD_USERNAME` }}",
         "password": "{{ user `UPCLOUD_PASSWORD` }}",
         "zone": "nl-ams1",
         "storage_uuid": "01000000-0000-4000-8000-000030060200"
      }
   ],
   "provisioners": [
      {
         "type": "shell",
         "inline": [
           "apt update",
           "apt upgrade -y",
           "echo '' | tee /root/.ssh/authorized_keys"
         ]
      }
   ]
}
for image in driver.list_images():
    if image.name.startswith('Ubuntu') \
    and image.name.count('16.04') \
    and image.id.endswith('0'):
        break

for size in driver.list_sizes():
    if size.name == '1xCPU-1GB':
        break

for location in driver.list_locations():
    if location.name.startswith('London'):
        break

node = driver.create_node(
    image=image,
    size=size,
    location=location,
    name='Libcloud Example',
    ex_hostname='libcloud.example.com'
    )

pprint(node.state)

Multiple open source API-clients available

// Create the server
serverDetails, err := svc.CreateServer(&request.CreateServerRequest;{
	Zone:             "fi-hel1",
	Title:            "My new server",
	Hostname:         "server.example.com",
	PasswordDelivery: request.PasswordDeliveryNone,
	StorageDevices: []request.CreateServerStorageDevice{
		{
			Action:  request.CreateStorageDeviceActionClone,
			Storage: "01000000-0000-4000-8000-000030060200",
			Title:   "disk1",
			Size:    30,
			Tier:    upcloud.StorageTierMaxIOPS,
		},
	},
	IPAddresses: []request.CreateServerIPAddress{
		{
			Access: upcloud.IPAddressAccessPrivate,
			Family: upcloud.IPAddressFamilyIPv4,
		},
		{
			Access: upcloud.IPAddressAccessPublic,
			Family: upcloud.IPAddressFamilyIPv4,
		},
		{
			Access: upcloud.IPAddressAccessPublic,
			Family: upcloud.IPAddressFamilyIPv6,
		},
	},
})
import upcloud_api
from upcloud_api import Server, Storage, ZONE, login_user_block

manager = upcloud_api.CloudManager('api_user', 'password')
manager.authenticate()


login_user = login_user_block(
    username='theuser',
    ssh_keys=['ssh-rsa AAAAB3NzaC1yc2EAA[...]ptshi44x [email protected]'],
    create_password=False
)

cluster = {
    'web1': Server(
        core_number=1, # CPU cores
        memory_amount=1024, # RAM in MB
        hostname='web1.example.com',
        zone=ZONE.London, # ZONE.Helsinki and ZONE.Chicago available also
        storage_devices=[
            # OS: Ubuntu 14.04 from template
            # default tier: maxIOPS, the 100k IOPS storage backend
            Storage(os='Ubuntu 14.04', size=10),
            # secondary storage, hdd for reduced cost
            Storage(size=100, tier='hdd')
        ],
        login_user=login_user  # user and ssh-keys
    ),
    'web2': Server(
        core_number=1,
        memory_amount=1024,
        hostname='web2.example.com',
        zone=ZONE.London,
        storage_devices=[
            Storage(os='Ubuntu 14.04', size=10),
            Storage(size=100, tier='hdd'),
        ],
        login_user=login_user
    ),
    'db': Server(
        plan='2xCPU-4GB', # use a preconfigured plan, instead of custom
        hostname='db.example.com',
        zone=ZONE.London,
        storage_devices=[
            Storage(os='Ubuntu 14.04', size=10),
            Storage(size=100),
        ],
        login_user=login_user
    ),
    'lb': Server(
        core_number=2,
        memory_amount=1024,
        hostname='balancer.example.com',
        zone=ZONE.London,
        storage_devices=[
            Storage(os='Ubuntu 14.04', size=10)
        ],
        login_user=login_user
    )
}

for server in cluster:
    manager.create_server(cluster[server]) # automatically populates the Server objects with data from API
import upcloud_api
from upcloud_api import Server, Storage, ZONE, login_user_block

manager = upcloud_api.CloudManager('api_user', 'password')
manager.authenticate()


login_user = login_user_block(
    username='theuser',
    ssh_keys=['ssh-rsa AAAAB3NzaC1yc2EAA[...]ptshi44x [email protected]'],
    create_password=False
)

cluster = {
    'web1': Server(
        core_number=1, # CPU cores
        memory_amount=1024, # RAM in MB
        hostname='web1.example.com',
        zone=ZONE.London, # ZONE.Helsinki and ZONE.Chicago available also
        storage_devices=[
            # OS: Ubuntu 14.04 from template
            # default tier: maxIOPS, the 100k IOPS storage backend
            Storage(os='Ubuntu 14.04', size=10),
            # secondary storage, hdd for reduced cost
            Storage(size=100, tier='hdd')
        ],
        login_user=login_user  # user and ssh-keys
    ),
    'web2': Server(
        core_number=1,
        memory_amount=1024,
        hostname='web2.example.com',
        zone=ZONE.London,
        storage_devices=[
            Storage(os='Ubuntu 14.04', size=10),
            Storage(size=100, tier='hdd'),
        ],
        login_user=login_user
    ),
    'db': Server(
        plan='2xCPU-4GB', # use a preconfigured plan, instead of custom
        hostname='db.example.com',
        zone=ZONE.London,
        storage_devices=[
            Storage(os='Ubuntu 14.04', size=10),
            Storage(size=100),
        ],
        login_user=login_user
    ),
    'lb': Server(
        core_number=2,
        memory_amount=1024,
        hostname='balancer.example.com',
        zone=ZONE.London,
        storage_devices=[
            Storage(os='Ubuntu 14.04', size=10)
        ],
        login_user=login_user
    )
}

for server in cluster:
    manager.create_server(cluster[server]) # automatically populates the Server objects with data from API
var upcloud = require('upcloud');

var defaultClient = upcloud.ApiClient.instance;

// Configure HTTP basic authorization: baseAuth
var baseAuth = defaultClient.authentications['baseAuth'];
baseAuth.username = 'UPCLOUD_USERNAME';
baseAuth.password = 'UPCLOUD_PASSWORD';

var api = new upcloud.AccountApi();
api.getAccount().then(
  function(data) {
    console.log('API called successfully. Returned data: ' + data);
  },
  function(error) {
    console.error(error);
  },
);
require_once(__DIR__ . '/vendor/autoload.php');

$api_instance = new Upcloud\ApiClient\Upcloud\AccountApi();
$config = $api_instance->getConfig();
$config->setUsername('YOUR UPCLOUD USERNAME');
$config->setPassword('YOUR UPCLOUD PASSWORD');

try {
    $result = $api_instance->getAccount();
    print_r($result);
} catch (Exception $e) {
    echo 'Exception when calling AccountApi->getAccount: ', $e->getMessage(), PHP_EOL;
}

Let's get inspired, share and learn together

Join the community

Tutorials

Hundreds of tutorials for almost anything, written by UpCloud together with the community.

Explore

Resources

Check out the many open source resources and projects that help you take full control of your cloud servers.

Explore

Cases studies

Read how our users effectively take advantage of our global cloud infrastructure.

Explore

Events

Check out what events we will participate in and let’s meet, or let’s host a meetup together!

Explore

What our users have to say

Case Studies

How Sofia Digital modernised broadcasting by moving to the cloud

UpCloud's specialised cloud computing environment and online services have enabled Sofia Digital to move their servers and services from on-premises into the cloud.

Read the Case Study

How Admin Labs built trusted monitoring on cloud reliability

Thanks to UpCloud’s extremely fast and low latency network, we are able to effectively monitor our own and our customers’ systems and services.

Read the Case Study

How Philanthropy.gr took control of server management with ease

We offer web hosting and managed servers and we have found UpCloud to be the fastest and the most reliable for our use.

Read the Case Study

How DrugBank considerably increased website speed and reliability

Our website is now much faster after migrating to UpCloud than on our previous host as reported by Google page speed insights.

Read the Case Study

How Nomadat enhanced years of experience with faster infra

By our calculations, the speed and performance of our infrastructure on UpCloud are now up to 60% faster depending on the website.

Read the Case Study

How Hostaan launched a new hosting service on UpCloud

UpCloud's 100% SLA gives us an environmental advantage to offer the best reliability to our customers.

Read the Case Study

How Visuon simplified hosting by consolidating on one provider

Standardising our systems on a single service has made managing our servers faster and easier saving us time and money.

Read the Case Study

How WebZenitude got their zen on by migrating to UpCloud

System response times are constant and excellent, UpCloud truly fulfils its promises and commitments.

Read the Case Study

How we built on worry-free cloud infrastructure

One key advantage for me has been that UpCloud makes strong guarantees about uptime and redundancy. Together with automatic backups, I have little to worry about.

Read the Case Study

How Hosted Power leaps beyond the conventionally possible

One thing we've noticed in particular is that some websites and applications are sometimes already up to 100% faster just by moving onto UpCloud.

Read the Case Study

How finalwebsites builds lasting partnerships on mutual values

UpCloud's customer service for support and account questions is very personal, and you always get an answer that makes you feel like a respected customer.

Read the Case Study

How Evomira decreased load times by taking control of their hosting

On most of our sites, load times have decreased by approximately 50% when compared to other managed hosting providers.

Read the Case Study

How XSbyte reduced application load times and the hassle of configuration

After migrating to UpCloud, we've seen reduced application load times and the hassle of configuration.

Read the Case Study

How BNESIM built their global mobile network on the agility of the cloud

Our high availability setup has proven very reliable, we haven’t had a single outage due to technical problems while hosting on UpCloud.

Read the Case Study

How Zoner doubled their customers web site performance

On average, WordPress sites that are transferred to our service, have reduced site load time in half and being able to handle multiple times more visitors than before.

Read the Case Study

How Tappara.co found the balance between cost and performance

For our architecture especially the single core CPU performance is essential, and this is something where UpCloud shines against the similarly priced competition.

Read the Case Study

How Space2host is delivering perfect uptime for half the cost

UpCloud Singapore DC delivers 100% uptime, security, cloud performance, snapshot backup, and with MaxIOPS storage, there is no one that compares to UpCloud.

Read the Case Study

How Finqu attained 100% availability with superior performance

Previously, we ended up wasting a lot of time investigating and resolving technical problems. In contrast, we've been extremely happy hosting on UpCloud thanks to their reliable infrastructure.

Read the Case Study

How Vaimo achieved faster time to market with performance to spare

Our services have benefited from the new solution resulting in a faster time to market with the performance that is required with large eCommerce systems.

Read the Case Study

How Wunder unified their infrastructure in all regions

Our projects vary greatly between implementations, therefore, we really wanted to unify our infrastructure. UpCloud has proven to be flexible enough to allow us to adapt to different needs with minimal effort.

Read the Case Study

How Haltu built intricate customer solutions on simplicity

Haltu, an agile software development house, built intricate customer solutions on simplicity of UpCloud infrastructure.

Read the Case Study

How PointerBP found relief from maintenance in new partnership

Each day our systems ingest large quantities of data and with UpCloud we know that the hardware management is in trustworthy and experienced hands.

Read the Case Study

How Anders built their services on minimum maintenance

Consolidating almost everything hosting related to a single provider has been a huge management relief for our system administrators.

Read the Case Study

How Polystream’s low latency application streaming reached new audiences

We are always looking to broaden our global reach and thanks to UpCloud we are able to deliver great quality streams to regions yet unreachable by traditional 3D streaming methods.

Read the Case Study

How Ruby Studio built trusted design on reliability

With the new solution, we have achieved complete transparency and control. If we experience issues with a server, our server team will always be on top of it even before a client reports the issue.

Read the Case Study

How Critical Force supercharged their game with MaxIOPS

UpCloud has enabled us to run large datasets on individual servers. Due to the extreme IOPS performance, we’ve consolidated our services from tens of hosts to but a few high-powered systems.

Read the Case Study

How Evermade cloudified their company infrastructure

Cloud-based company infrastructure has provided many benefits. For example, working remotely is a breeze since our work is not tied to any office location or even a specific computer.

Read the Case Study

How Fraktio attained rock-solid stability

We have been enjoying the competitive pricing. On top of that, the customer service is always very friendly and responsive thanks to UpCloud being far less corporate than other providers.

Read the Case Study

How Sitesbi raised their SLA way above industry norms

Thanks to your offerings, our SLA is almost as good as yours. Your backups are also, in our experience, the best in the market. It was love at first sight.

Read the Case Study

How Barabra took control of their cloud hosting solution

We're able to adapt to different situations much better thanks to being in full control of our software stack. The ability to activate and deactivate instances on-demand has proven very useful.

Read the Case Study

How SportMonks increased their API performance to new heights

The new servers at UpCloud are so much faster on the disk, CPU, and memory performance. We get way more requests out of the same amount of money that the migration was well worth it.

Read the Case Study

Read our latest

Blog Posts

The year 2020 in retrospect 

For most of us, 2020 was an unexpectedly challenging year. The ongoing global pandemic has significantly changed lives around the world. Luckily, we at UpCloud have been able to continue operations to provide you, our users, with many new features...

Eetu Ritvanen: I enjoy the freedom in managing my work time

Our System Administrator Eetu has been with UpCloud for four years. Initially, he joined the company in the position of a Customer Support Engineer. He helped to build the foundations for the Support team and UpCloud’s customer support as we...

Anu Takala: I’m always thrilled to get things happening!

Anu joined UpCloud during autumn 2019. As a Product Owner, she drives the development of our products and their lifecycle from an idea all the way to the users. In everything she does, she strives for learning new things and...

Welcome to Poland PL-WAW1! We’re opening a new data centre in Warsaw

Europe is one of UpCloud’s most significant markets. And even though we’re constantly expanding to different regions in the world, we don’t want to neglect our European customers. After the recent openings of our data centres in New York and...

Have a look at our blog page for more stories Go to our blog

What’s new from the

Community

Deploy your cloud servers worldwide

Our data centres

Helsinki FI-HEL1

+358 9 4272 0661

Helsinki FI-HEL2

+358 9 4272 0661

London

+44 20 358 80000

Chicago

+1 415 830 8474

Frankfurt

+44 20 358 80000

Poland

+44 20 358 80000

Amsterdam

+44 20 358 80000

Singapore

+65 3163 7151

San José

+1 415 830 8474

Madrid

New York

+1 415 830 8474

Locations

Helsinki (HQ)

In the capital city of Finland, you will find our headquarters, and our first data centre. This is where we handle most of our development and innovation.

London

London was our second office to open, and a important step in introducing UpCloud to the world. Here our amazing staff can help you with both sales and support, in addition to host tons of interesting meetups.

Singapore

Singapore was our 3rd office to be opened, and enjoys one of most engaged and fastest growing user bases we have ever seen.

Seattle

Seattle is our 4th and latest office to be opened, and our way to reach out across the pond to our many users in the Americas.