Faits :
A.
Par ordonnance du 9 juin 2016, le ministère public genevois a reconnu X._ coupable d'entrée illégale, de séjour illégal (art. 115 al. 1 let. a et b LEtr) et d'exercice illicite de la prostitution (<ref-law>). Il l'a condamné à une peine pécuniaire de 120 jours-amende à 10 fr. l'unité, sous déduction de deux jours de détention préventive, avec sursis et à une amende de 600 francs. Il a ordonné le séquestre et la confiscation de l'argent figurant sous chiffre 1 de l'inventaire (1'176 fr. et 50 euros) et l'a condamné aux frais de la procédure arrêtés à 250 francs.
Statuant sur opposition à cette ordonnance par décision du 17 février 2017, le ministère public genevois a ordonné le classement partiel de la procédure dirigée contre X._ s'agissant des infractions à l'art. 115 al. 1 let. a et b LEtr et l'a déclaré coupable d'infraction à l'<ref-law>. Il l'a condamné à une amende de 600 fr., ordonné notamment le séquestre et la confiscation à hauteur de 690 fr. de l'argent figurant sous chiffre 1 de l'inventaire et la compensation à due concurrence des valeurs séquestrées (<ref-law>).
Le ministère public a classé la procédure pour séjour illégal dès lors qu'aucune démarche n'avait été entreprise par les autorités zurichoises pour mettre en oeuvre le renvoi.
B.
Statuant sur opposition à l'ordonnance pénale, le Tribunal de police genevois a, par jugement du 9 novembre 2017, acquitté X._ du chef d'exercice illicite de la prostitution, a condamné l'Etat de Genève à lui payer 1'500 fr. pour ses frais de défense et 400 fr. à titre d'indemnité pour la détention injustifiée subie (2 jours) et a ordonné la restitution des valeurs et du téléphone portable saisis, les frais étant laissés à la charge de l'Etat.
L'acquittement reposait sur le fait que X._ ignorait l'existence d'une obligation d'annonce pour les travailleurs du sexe, selon le droit cantonal genevois, en lien avec l'<ref-law>.
C.
Statuant sur appel du ministère public, la Cour de justice de la République et canton de Genève, Chambre pénale d'appel et de révision, l'a partiellement admis par arrêt du 17 avril 2018. Elle a débouté X._ de ses conclusions en indemnisation (art. 429 al. 1 let. a et c CPP), l'a condamné aux frais de la procédure de première instance à hauteur de 916 fr. et a compensé cette créance avec les avoirs séquestrés sous chiffre 1 de l'inventaire. Elle a ordonné la restitution à X._ du solde des avoirs séquestrés, à savoir, 260 fr. et 50 euros. Elle a confirmé le jugement entrepris pour le surplus.
C.a. En substance, l'arrêt cantonal repose sur les faits suivants.
Le 7 juin 2016, la police a arrêté quatre hommes qui étaient soupçonnés de s'adonner à un trafic de stupéfiants depuis un appartement à l'intérieur duquel de la cocaïne et du matériel de conditionnement ont été découverts. Démuni de papiers d'identité, X._ était présent lorsque la police a pénétré dans le studio en question. Il était en possession de 1'176 fr., 50 euros ainsi que de deux téléphones portables. Interrogé sur l'origine de l'argent en sa possession, il a répondu qu'il provenait de la prostitution. D'origine gambienne, X._ a formé une demande d'asile en Suisse en 2014, laquelle a été rejetée par décision du 5 septembre 2014, lui fixant un délai pour quitter le territoire.
C.b. La cour cantonale a confirmé l'acquittement pour exercice illicite de la prostitution, par substitution de motifs, considérant que les aveux de X._ ne paraissaient pas vraisemblables. Elle n'était pas convaincue qu'il s'était effectivement livré à la prostitution, ayant été dans l'intervalle, condamné pour trafic de stupéfiants.
D.
X._ forme un recours en matière pénale auprès du Tribunal fédéral contre la décision cantonale et requiert son annulation et la confirmation du jugement de première instance. Il sollicite l'octroi de l'assistance judiciaire.
Invités à se déterminer sur le recours, le ministère public ainsi que la cour cantonale ont indiqué n'avoir pas d'observations particulières à formuler. Le ministère public s'est référé à l'arrêt entrepris et a conclu au rejet du recours.

Considérant en droit :
1.
Le recourant conteste la mise à sa charge des frais de procédure ainsi que le refus d'indemnisation des frais de défense et du tort moral subi en raison de sa détention préventive. Il invoque une violation du principe de la présomption d'innocence.
1.1.
1.1.1. Selon l'<ref-law>, le prévenu supporte les frais de procédure s'il est condamné. L'<ref-law> prévoit que, lorsque la procédure fait l'objet d'une ordonnance de classement ou que le prévenu est acquitté, tout ou partie des frais de procédure peuvent être mis à sa charge s'il a, de manière illicite et fautive, provoqué l'ouverture de la procédure ou rendu plus difficile la conduite de celle-ci. La condamnation d'un prévenu acquitté à supporter tout ou partie des frais doit respecter la présomption d'innocence, consacrée par les art. 32 al. 1 Cst. et 6 par. 2 CEDH. Celle-ci interdit de rendre une décision défavorable au prévenu libéré en laissant entendre que ce dernier serait néanmoins coupable des infractions qui lui étaient reprochées. Une condamnation aux frais n'est ainsi admissible que si le prévenu a provoqué l'ouverture de la procédure pénale dirigée contre lui ou s'il en a entravé le cours. A cet égard, seul un comportement fautif et contraire à une règle juridique, qui soit en relation de causalité avec les frais imputés, entre en ligne de compte.
Pour déterminer si le comportement en cause est propre à justifier l'imputation des frais ou le refus d'une indemnité, le juge peut prendre en considération toute norme de comportement écrite ou non écrite résultant de l'ordre juridique suisse pris dans son ensemble, dans le sens d'une application par analogie des principes découlant de l'<ref-law> (<ref-ruling> consid. 1b p. 334; <ref-ruling> consid. 2c p. 169). Le fait reproché doit constituer une violation claire de la norme de comportement (<ref-ruling> consid. 1b p. 334; <ref-ruling> consid. 2d p. 171). Le comportement en question doit en outre se trouver dans une relation de causalité adéquate avec l'ouverture de l'enquête ou les obstacles mis à celle-ci. La relation de causalité est réalisée lorsque, selon le cours ordinaire des choses et l'expérience de la vie, le comportement de la personne concernée était de nature à provoquer l'ouverture de la procédure pénale et le dommage ou les frais que celle-ci a entraînés. Une condamnation aux frais ne peut se justifier que si, en raison du comportement illicite du prévenu, l'autorité était légitimement en droit d'ouvrir une enquête. Elle est en tout cas exclue lorsque l'autorité est intervenue par excès de zèle, ensuite d'une mauvaise analyse de la situation ou par précipitation (ATF <ref-ruling> consid. 2c p. 170 s.; arrêts 6B_556/2017 du 15 mars 2018 consid. 2.1; 6B_1146/2016 du 14 juillet 2017 consid. 1.3).
1.1.2. A teneur de l'<ref-law>, si le prévenu est acquitté totalement ou en partie ou s'il bénéficie d'une ordonnance de classement, il a droit à une indemnité pour les dépenses occasionnées par l'exercice raisonnable de ses droits de procédure (let. a), une indemnité pour le dommage économique subi au titre de sa participation obligatoire à la procédure pénale (let. b), une réparation du tort moral subi en raison d'une atteinte particulièrement grave à sa personnalité, notamment en cas de privation de liberté (let. c).
En vertu de l'<ref-law>, l'autorité pénale peut réduire ou refuser l'indemnité ou la réparation du tort moral lorsque le prévenu a provoqué illicitement et fautivement l'ouverture de la procédure ou a rendu plus difficile la conduite de celle-ci. L'<ref-law> est le pendant de l'<ref-law> en matière de frais. Une mise à charge des frais selon l'art. 426 al. 1 et 2 CPP exclut en principe le droit à une indemnisation. La question de l'indemnisation doit être tranchée après la question des frais. Dans cette mesure, la décision sur les frais préjuge de la question de l'indemnisation. Il en résulte qu'en cas de condamnation aux frais, il n'y a pas lieu d'octroyer de dépens ou de réparer le tort moral (<ref-ruling> consid. 2.4.2 p. 357). Lorsque la condamnation aux frais n'est que partielle, la réduction de l'indemnité devrait s'opérer dans la même mesure (arrêts 6B_1238/2017 du 12 avril 2018 consid. 2.1; 6B_556/2017 du 15 mars 2018 consid. 2.5). En revanche, si l'Etat supporte les frais de la procédure pénale, le prévenu dispose d'un droit à une indemnité pour ses frais de défense et son dommage économique ou à la réparation de son tort moral selon l'<ref-law>; dans ce cas, il ne peut être dérogé au principe du droit à l'indemnisation qu'à titre exceptionnel (<ref-ruling> consid. 2.4.2 p. 357; arrêt 6B_1238/2017 du 12 avril 2018 consid. 2.1).
1.2. En l'espèce, les frais de procédure de première instance s'élèvent à 916 fr. et comprennent 500 fr. de frais de l'ordonnance pénale, les 419 fr. restant relevant de la procédure devant le tribunal de première instance.
La cour cantonale a relevé que, si le recourant avait bénéficié d'une ordonnance de classement s'agissant de l'infraction de séjour illégal, il avait toutefois résidé sans droit en Suisse depuis la fin de l'année 2014, ce qu'il avait reconnu. Sa demande d'asile a été rejetée en septembre 2014 et il n'a pas quitté la Suisse dans le délai qui lui avait été fixé par les autorités zurichoises, décidant d'entrer dans la clandestinité et de s'installer illégalement à Genève. Ce comportement, contraire à l'ordre juridique, avait justifié l'ouverture d'une procédure pénale contre lui pour infractions à la LEtr. Par ailleurs, le fait qu'il était dépourvu de documents d'identité était aussi un élément à prendre en considération, dans la mesure où il a obligé les autorités à entreprendre les vérifications d'usage pour l'identifier.
S'agissant de la contravention à l'<ref-law>, le recourant avait soutenu s'être adonné à la prostitution pour justifier la possession de sommes d'argent de provenance douteuse, de sorte qu'il avait aussi provoqué l'ouverture d'une instruction de ce chef.
Pour ces motifs, la cour cantonale a mis à la charge du recourant la totalité des frais de procédure. Par identité de motifs, elle lui a refusé toute indemnité pour ses frais d'avocat et pour le tort moral subi en raison de sa détention, en précisant que sa privation de liberté n'avait duré que deux jours et que le séjour illégal était un délit qui pouvait à lui seul justifier le placement en détention préventive.
1.3.
1.3.1. C'est en vain que le recourant déclare être titulaire d'un titre de séjour espagnol qui l'autoriserait à séjourner en Suisse pour une période de trois mois, dès lors que la cour cantonale a retenu que le recourant n'avait pas quitté la Suisse dans le délai fixé par décision de septembre 2014 et s'était installé à Genève - ce qu'il avait reconnu -, sans que l'arbitraire de ces constatations ne soit soulevé (cf. art. 97 al. 1 et 106 al. 2 LTF). Au vu de ce comportement, la cour cantonale pouvait, sans violer le droit fédéral, condamner le recourant aux frais de première instance relatifs à la procédure pour séjour illégal. Or, ainsi que le relève le recourant, l'infraction à la LEtr n'a pas été traitée par le tribunal de première instance, dès lors qu'elle a fait l'objet d'un classement par le ministère public genevois. Ainsi, seule une partie des frais de l'ordonnance du ministère public peut être mise à la charge du recourant s'agissant de ce pan de la procédure en vertu de l'<ref-law>.
1.3.2. Quant à la procédure pour exercice illicite de la prostitution, le raisonnement de la cour cantonale ne saurait être suivi. En effet, elle a acquitté le recourant de ce chef d'infraction, car elle n'était pas convaincue qu'il s'était effectivement livré à la prostitution (au motif que ses aveux ne paraissaient pas vraisemblables), ce par substitution de motifs. Elle n'expose pas en quoi, le seul fait que le recourant a déclaré faussement s'adonner à la prostitution constituerait un comportement illicite et fautif permettant de mettre les frais à la charge du prévenu acquitté. En acquittant le recourant du chef d'exercice illicite de la prostitution, au bénéfice du doute, tout en le condamnant aux frais, la cour cantonale a violé l'<ref-law> et la présomption d'innocence. Il n'y a pas lieu de mettre les frais résultant de la procédure devant le tribunal de première instance à la charge du recourant.
1.3.3. Il en résulte que le recours doit être admis sur ce point, l'arrêt cantonal annulé et la cause renvoyée à la cour cantonale afin qu'elle condamne le recourant à une partie des frais relevant de la procédure devant le ministère public (500 fr.) en lien avec le séjour illégal et qu'elle laisse les frais en lien avec l'infraction d'exercice illicite de la prostitution à la charge de l'Etat.
Dans la mesure où la décision sur les frais préjuge de la question de l'indemnisation, le recours doit également être admis s'agissant de l'indemnisation du recourant. La cause doit être renvoyée à la cour cantonale pour qu'elle statue sur la demande en indemnisation du recourant au sens de l'art. 429 al. 1 let. a et c en lien avec l'<ref-law>.
2.
Le recourant reproche à la cour cantonale de ne pas avoir examiné si les valeurs patrimoniales séquestrées faisant l'objet de la compensation avec les frais de procédure étaient insaisissables. Il invoque une violation de l'<ref-law>.
Par économie de procédure et dans la mesure où la question de la compensation des frais de procédure avec les avoirs séquestrés dépend de la répartition des frais, il y a lieu de traiter ce grief.
2.1. L'<ref-law> permet le séquestre du patrimoine d'un prévenu dans la mesure qui paraît nécessaire pour couvrir les frais de procédure et les indemnités à verser (let. a), les peines pécuniaires et les amendes (let. b). Le séquestre en couverture des frais impose de prendre en compte le revenu et la fortune du prévenu (<ref-law>) et d'exclure du séquestre les valeurs insaisissables selon les art. 92 - 94 de la loi fédérale du 11 avril 1889 sur la poursuite pour dettes et la faillite (LP ou loi sur la poursuite; RS 281.1; <ref-law>). Un tel examen s'impose car cette mesure tend exclusivement à la sauvegarde des intérêts publics, donc à garantir le recouvrement de la future dette de droit public du prévenu. Elle peut, de plus, porter sur tous les biens et valeurs du prévenu, même ceux qui n'ont pas de lien de connexité avec l'infraction. Il se justifie donc, sous l'angle du principe de proportionnalité (art. 197 al. 1 let. c et d CPP), de respecter le minimum vital de la personne touchée par ce type de séquestre (<ref-ruling> consid. 3.1 p. 363).
L'<ref-law> dispose que les autorités pénales peuvent compenser les créances portant sur des frais de procédure avec les indemnités accordées à la partie débitrice dans la même procédure pénale et avec les valeurs séquestrées. Cette disposition est susceptible de s'appliquer dans l'hypothèse où le prévenu a été acquitté en tout ou partie et qu'il peut prétendre à une indemnisation sur la base de l'art. 429 al. 1 let. a ou b CPP, alors qu'il doit simultanément supporter des frais de procédure selon l'<ref-law>. Une compensation est en revanche exclue en cas d'indemnité pour tort moral selon l'art. 429 al. 1 let. c CPP. L'autorité de jugement est notamment compétente pour prononcer une compensation fondée sur l'<ref-law> (<ref-ruling> consid. 1 p. 294; <ref-ruling> consid. 5 p. 244).
L'utilisation des valeurs patrimoniales séquestrées pour couvrir les frais doit être ordonnée dans la décision finale (arrêt 6B_998/2017 du 20 avril 2018 consid. 7.1).
2.2. Tenant compte du statut du recourant en Suisse et de son impécuniosité, la cour cantonale a douté du futur recouvrement des frais de la procédure. Pour ce motif, elle a ordonné la compensation des frais de la procédure avec les montants séquestrés. Ce faisant, elle a confirmé le séquestre (cf. arrêt 6B_998/2017 du 20 avril 2018 consid. 7.2).
2.3. En l'espèce, le séquestre ne porte pas sur le produit d'une infraction pouvant faire l'objet d'une confiscation ou d'une créance compensatrice (cf. art. 70 et 71 CP) mais sur le patrimoine du prévenu en vue de couvrir les frais (art. 268 en lien avec <ref-law>), ce qui impose de prendre en compte son revenu et sa fortune. L'arrêt entrepris omet d'examiner le caractère saisissable des valeurs patrimoniales séquestrées ainsi que le minimum vital du recourant.
Le recours doit ainsi également être admis sur ce point. La cause doit être renvoyée à la cour cantonale pour qu'elle examine le caractère saisissable des valeurs en cause.
3.
Au vu de ce qui précède, le recours doit être partiellement admis (cf. consid. 1.3.3 et 2.3). L'arrêt attaqué doit être annulé et la cause renvoyée à la cour cantonale pour nouvelle décision sur une partie des frais, des indemnisations et sur le sort des valeurs saisies. Pour le surplus, le recours doit être rejeté. Le recourant, qui n'obtient que partiellement gain de cause, supportera une partie des frais judiciaires (<ref-law>). Il peut prétendre à des dépens réduits, à la charge du canton de Genève (<ref-law>). Sa requête d'assistance judiciaire est sans objet dans la mesure où le recourant a droit à des dépens; elle doit être rejetée pour le reste, dès lors que le recours était dénué de chances de succès s'agissant des aspects sur lesquels le recourant a succombé (<ref-law>).

Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est partiellement admis. L'arrêt attaqué est annulé et la cause est renvoyée à la cour cantonale pour nouvelle décision. Pour le surplus, le recours est rejeté.
2.
La demande d'assistance judiciaire est rejetée dans la mesure où elle n'est pas sans objet.
3.
Une partie des frais judiciaires, arrêtée à 500 fr., est mise à la charge du recourant.
4.
Le canton de Genève versera en mains du conseil du recourant une indemnité de 1'000 fr. à titre de dépens réduits pour la procédure devant le Tribunal fédéral.
5.
Le présent arrêt est communiqué aux parties et à la Cour de justice de la République et canton de Genève, Chambre pénale d'appel et de révision.
Lausanne, le 18 juillet 2018
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
La Juge présidant : Jacquemoud-Rossari
La Greffière : Klinke