# Custom Domain

Besides deploying your project to `yourapp.directual.app,` you can also publish your project to any custom domain you own once you have [a suitable plan](/pricing-and-billing/pricing-plans.md).

## Step 1. Register your domain

If you own your domain already you can add it, go to [Step 2](/web-pages/web-app-settings/custom-domain.md#step-2-add-a-domain-in-directual). You also can search and purchase a new domain, for example, through [GoDaddy](https://godaddy.com/) or [Google Domains](https://domains.google.com/) (or any other service).

## Step 2. Add a domain in Directual

Go to **Web-pages** section, then to Web-portal settings → Custom Domain.

![](/files/-MSXv4qq0LwGHIxL80xR)

### Adding a First-level Domain

For example, `mysite.com` or `superapp.io`

![](/files/-MSXu0uQCesCSX-3LDSY)

If you add a first-level domain, you'll see A-records to copy.

### Adding a Subdomain

For example, `app.mysite.com` or `www.superapp.io`&#x20;

![](/files/-MSXueaodAL-cVDf3Fgt)

## Step 3. Updating DNS-records

Access your domain's DNS management in your domain registrar's or DNS host's dashboard.

### In case of a first-level domain

* Add an A record
* Set the **host** to @
* Add the first `ip`, that you've copied in Directual
* Save the record
* Add one more A record
* Set the host to @
* Add the second `ip`, that you've copied in Directual
* Save the record

### In case of a subdomain

* Add a CNAME record
* Set the **host** to your subdomain (for example if you add a subdomain `hello.myapp.com`, host will be `hello`)
* Set the **link** to `proxy.directual.app`
* Save the record

{% hint style="info" %}
Don't forget to edit records for `www` subdomain, if you want to use it. Usually there are some default settings for `www`.
{% endhint %}

## Step 4. Check DNS status in Directual

{% hint style="info" %}
Domains can take anywhere from 24–48 hours to populate and sometimes up to 72 hours depending on your provider. Some providers like GoDaddy and Google Domains can populate their DNS as quickly as 15 min to 1 hour.
{% endhint %}

![](/files/-MSXx8rv35xi0RGRGjN_)

## Bonus. Free SSL

Directual automatically provides SSL (**"secure socket layer"**) to encrypt your app. SSL is the standard method for establishing an encrypted link between a web server and a browser. It ensures that all data passed between the web server and browsers remain private and integral, so you and your website's visitors can rest assured that your information is safe.

{% hint style="info" %}
Issuing an SSL certificate usually takes 10–20 minutes.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://readme.directual.com/web-pages/web-app-settings/custom-domain.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
