# Integrating into your dapps

Currently, we offer four ways for integrating Nad Name Service into your dapps:

* Query contract directly
* Using SDKs
* Using REST APIs
* NNS Adapters

## Which integration method is best for you&#x20;

### 🔍 Comparative summary

<table data-full-width="false"><thead><tr><th width="173.07421875">Integration Method</th><th width="164.390625">Control Level</th><th>Developer Effort</th><th>Speed &#x26; Latency</th><th>Flexibility</th><th>Ecosystem Fit</th></tr></thead><tbody><tr><td>Query Contract Directly</td><td>High</td><td>High</td><td>Very fast (RPC)</td><td>Fully flexible</td><td>Neutral (raw)</td></tr><tr><td>NNS Adapters</td><td>Moderate</td><td>Very low</td><td>Fast</td><td>Moderate (ENS‑aligned)</td><td>Best for ENS-based tools</td></tr><tr><td>NNS SDKs</td><td>Moderate-high</td><td>Low-moderate</td><td>Fast</td><td>High</td><td>JavaScript-heavy dApps</td></tr><tr><td>REST APIs</td><td>Medium</td><td>Low</td><td>Moderate</td><td>Moderate</td><td>Backend / external service</td></tr></tbody></table>

### 🤔 Decision Matrix

Higher score = Better

<table><thead><tr><th width="146.49609375">Factor</th><th width="161.16015625" data-type="rating" data-max="5">Query Contract</th><th data-type="rating" data-max="5">NNS Adapters</th><th data-type="rating" data-max="5">SDKs</th><th data-type="rating" data-max="5">REST APIs</th></tr></thead><tbody><tr><td>Implementation Speed</td><td>2</td><td>5</td><td>3</td><td>5</td></tr><tr><td>Customization</td><td>5</td><td>3</td><td>2</td><td>2</td></tr><tr><td>Performance</td><td>5</td><td>4</td><td>4</td><td>3</td></tr><tr><td>Decentralization</td><td>5</td><td>5</td><td>5</td><td>2</td></tr><tr><td>Maintenance Effort</td><td>2</td><td>5</td><td>3</td><td>5</td></tr><tr><td>Learning Curve</td><td>2</td><td>5</td><td>3</td><td>4</td></tr></tbody></table>

### 🧠 Best choice based on your needs

* **You want maximum control with no dependencies? Or you are developing smart contracts** → Use **Direct Contract Queries**
* **Already using ENS tooling and library and want quick adapter support?** → **NNS Adapters** will let you reuse existing code with minimal changes
* **You're building a high‑performance frontend dApp with JS frameworks?** → **NNS SDKs** strike a solid balance between control, speed, and ease-of-use.
* **Working server-side or need simple HTTP integration? Or you just simply want to display .nad names** → **REST APIs** offer minimal setup and broad compatibility.
